← All templates

Template preview · Software

Threat model

Identify credible threats and choose proportionate mitigations.

A threat model for a bounded fictional system change.

Sample purpose

Identify credible threats and choose proportionate mitigations.

Audience: Security engineer, Technical lead
Structure
4 sections
Criteria
12
Sources
10
Watches
5
Default approach
Review first
See the sample

Set the purpose first. Then change every section, criterion, and agent setting before anything runs.

Fictional sample

Structure and criteria

Sample content shows the shape of a useful document. Copying it is optional.

  1. 01

    System scope

    Describe assets, actors, and trust boundaries.

    Review first

    Criteria

    • Names a specific protected asset, e.g. note contents and share tokens
    • Names an external trust boundary, such as the public browser-to-API request
    • Lists actors, including an attacker with network access

    Sources

    Sample content

    Northstar Notes shares a document through an unguessable link. Protected assets are note contents and access tokens; the boundary is the public browser-to-API request.

  2. 02

    Threat inventory

    Record threats as attacker action plus harmed outcome.

    Review first

    Criteria

    • Each threat gives actor, action and asset, not a vulnerability label
    • Likelihood and impact are both rated
    • At least one threat uses a boundary named in system scope

    Sources

    Watches

    • Follows System scope
    • Checks cisa.gov weekly

    Agent may read attack.mitre.org, capec.mitre.org, cisa.gov.

    Sample content

    ThreatImpactPriority
    Leaked link forwarded to an unintended readerConfidential note disclosureHigh
    Token enumeration attemptsUnauthorized document accessMedium
  3. 03

    Mitigations

    Make controls testable and owned.

    Manual

    Criteria

    • Each mitigation names the threat it addresses
    • Verification is a test someone other than the owner can run
    • At least one mitigation records the residual risk

    Sources

    Watches

    • Follows Threat inventory

    Sample content

    • ☑ Use high-entropy tokens; verify generation test
    • ☑ Add revoke action; verify link stops resolving
    • ☑ Document forwarding remains residual user risk
  4. 04

    Review status

    Keep review coverage and unresolved risks visible.

    Review first

    Criteria

    • Names the reviewer and a review date within 90 days
    • States high-priority threats mitigated as a ratio
    • Each accepted risk names who accepted it

    Sources

    Watches

    • Follows Threat inventory
    • Follows Mitigations

    Sample content

    High-priority threats mitigated
    1 of 1
    Accepted residual risks
    1