⌂ Home

Threat Modeling Fundamentals

Structured way to anticipate what can go wrong—before attackers do.

What is threat modeling?

Threat modeling is a disciplined method to identify, quantify, and address security risks in a system. You capture how the system works (data flows, trust boundaries), enumerate threats, prioritize mitigations, and track residual risk. It turns vague worry into actionable work items for architects, developers, and operations.

Four-step process

Most lightweight approaches follow this loop—click each step for a quick prompt you can use in workshops.

1. Diagram

Draw data flows, actors, and trust boundaries.

2. Identify

Use STRIDE, misuse cases, or attack libraries.

3. Mitigate

Controls, design changes, monitoring.

4. Validate

Test assumptions; update as architecture changes.

Why it matters in DevSecOps

Tools (comparison)

Tool / styleBest forNotes
Microsoft Threat Modeling ToolData-flow + STRIDEWindows-centric
OWASP Threat DragonWeb apps, diagrams in GitOpen source
iriusRisk / enterprise TMScaled programs, risk registersCommercial
Whiteboard + STRIDEFast iterationNo license

Banking use case

Mobile banking API modernization

Context: A bank exposes account aggregation and payment initiation APIs to a new mobile app and partner fintechs.

Diagram: Trust boundaries between mobile device, API gateway, core banking, and fraud engine.

Threats: Token theft (spoofing), transaction repudiation, rate-limit bypass (DoS), insecure deserialization to core systems.

Mitigations: mTLS or OAuth2 with binding, step-up auth for high-risk payments, WAF + bot management, strict schema validation, centralized audit.

Outcome: Security requirements feed API design reviews and CI policy tests (schema, auth scopes, PII tagging).