How we threat model
Sep 3, 2020Robert Reichel

Summary
This post details the process and benefits of threat modeling at GitHub. It explains what threat modeling is, outlines the process (deciding when to threat model, building the model using tools like Microsoft's Threat Modeling Tool or OWASP's Threat Dragon, and reviewing the model using frameworks like STRIDE), and highlights key learnings such as system-wide security improvements, proactive design guidance, and improved communication between security and engineering teams. It emphasizes merging threat modeling into existing development lifecycle processes, ensuring preparedness, using defined mechanisms for risk assessment, and leaving with specific action items.
More from the Defense System Lifecycle Management trail
- When protections outlive their purpose: A lesson on managing defense systems at scale
- How we scaled the GitHub API with a sharded, replicated rate limiter in Redis
- Mitigating replication lag and reducing read load with freno
- A glimpse into GitHub's Bug Bounty workflow
- Moving persistent data out of Redis