Unit 1 ยท Security foundations and risk
Threat modeling is a structured design activity, not a one-time compliance form. Start with assets and data-flow diagrams. Mark processes, stores, external entities, and boundaries. Ask how an attacker could spoof identity, tamper with data, repudiate action, expose information, deny service, or gain unauthorized privilege.
Goal: access protected report
OR: steal session token
AND: cause XSS + reach victim
OR: abuse authorization
AND: obtain account + exploit IDORAttack trees show alternative paths with OR nodes and combined prerequisites with AND nodes. Controls should interrupt high-value paths. Include assumptions, attacker capabilities, dependencies, and abuse cases; otherwise the model quietly describes only the happy path.
1. What should be marked before threats?
2. What does tampering threaten?
3. Where should a control be placed?
A complete model marks the browser, API, identity provider, report service, database, and administrator as separate entities or processes. The modification goal may be reached through credential theft, authorization bypass, or compromised service identity. Controls include MFA, server-side authorization, parameterized updates, audit logs, and review alerts, with residual risk documented.