Threat Modelling

Structured process of identifying and mitigating threats & vulnerabilities at Design Phase

Frameworks for Threat Modelling

1. STRIDE (by microsoft)

It categorizes threats into six areas:
1. Spoofing: Pretending to be someone else—e.g., faking user identity
2. Tampering: Modifying data on a disk or in transit
3. Repudiation: Claiming you didn’t perform an action because there are no logs
4. Information Disclosure: Exposing data to unauthorized users
5. Denial of Service: Crashing or flooding the system to block valid users
6. Elevation of Privilege: An unprivileged user gaining admin rights

Threat Modeling Process

Step-1: Data Flow Diagram (DFD)

1. Create a Data Flow Diagram (DFD) Using OWASP Threat Dragon (Free modeling tool)

STRIDE Threat Model 5 Elements in OWASP
a. Process: Application
b. Data Stores: Databases, files and logs
c. External Entity (Actor): Objects outside the system that the system communicates with
d. Data Flow: Flow of information
e. Trust Boundary: A logical or physical line separating different zones of privilege, trust levels, or security contexts

2. Threat Model every Element: Once DFD is complete, mark each element again STRIDE.

STRIDE Threat Model