Threat Modeling with STRIDE and PASTA
Apply STRIDE to decompose systems and PASTA for a risk-centric threat model workshop.
Threat Modeling with STRIDE and PASTA is a free Cyber Security Academy lesson on CoddyKit — lesson 1 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Cyber Security Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
What is Threat Modeling?
Threat modeling is a structured process for identifying, prioritizing, and addressing security threats to a system before development or during design review. It answers: What are we building? What can go wrong? How do we fix it? How good is the result?
When to Threat Model
Threat model at design time (highest value, cheapest to fix), during major feature development, after architectural changes, and periodically for production systems. The cost to fix a design flaw found in threat modeling is 60x less than finding it in production.
STRIDE Overview
STRIDE is a mnemonic threat classification framework developed at Microsoft. Each letter represents a threat category: Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, Elevation of Privilege. Systematically apply STRIDE to each component in your architecture.
STRIDE: Spoofing and Tampering
Spoofing: Can an attacker impersonate a legitimate user, service, or component? Mitigations: strong authentication, certificates. Tampering: Can an attacker modify data in transit or at rest? Mitigations: digital signatures, HMAC, integrity checks, TLS.
STRIDE: Repudiation, Information Disclosure, and DoS
Repudiation: Can a user deny performing an action? Mitigation: audit logging, digital signatures. Information Disclosure: Can sensitive data be exposed? Mitigation: encryption, access control. Denial of Service: Can availability be disrupted? Mitigation: rate limiting, redundancy, input validation.
STRIDE: Elevation of Privilege
Can an attacker gain higher privileges than intended? Map all privilege levels in your system. Check: can a low-privilege user access admin functionality? Can a user process escape its sandbox? Each escalation path requires an access control mitigation.
Data Flow Diagrams for Threat Modeling
Create a DFD showing processes, data stores, external entities, and data flows with trust boundaries marked. Each element and crossing of a trust boundary generates STRIDE threats. DFDs provide the systematic structure that prevents missed attack surfaces.
PASTA Methodology
Process for Attack Simulation and Threat Analysis (PASTA) is a risk-centric threat modeling methodology with seven stages: define objectives, define technical scope, decompose application, analyze threats, identify vulnerabilities, enumerate attacks, and conduct risk analysis with countermeasures.
PASTA vs STRIDE
STRIDE is component-focused — systematically generating threats from a DFD. PASTA is risk-focused — starting from business objectives and working down to technical threats. STRIDE works well in development teams; PASTA aligns better with risk management and executive communication.
Threat Trees and Attack Trees
Attack trees decompose a root threat goal (e.g., "steal authentication token") into subtrees of alternative attack paths. Each leaf is a specific, concrete attack. Boolean logic (AND/OR) represents whether all or any sub-conditions must be true for the attack to succeed.
Threat Modeling Tools
OWASP Threat Dragon is a free, open-source DFD-based threat modeling tool. Microsoft Threat Modeling Tool includes a STRIDE-based engine. IriusRisk and ThreatModeler are commercial options that integrate with Jira and CI/CD pipelines for continuous threat modeling.
Knowledge Check
Which STRIDE threat is mitigated by implementing strong audit logging and digital signatures?
Summary
Threat modeling with STRIDE systematically generates threats from data flow diagrams, while PASTA takes a risk-centric approach starting from business objectives. Both produce prioritized threat lists that guide security control selection before code is written or deployed.
Frequently asked questions
Is the “Threat Modeling with STRIDE and PASTA” lesson free?
Yes — the full text of “Threat Modeling with STRIDE and PASTA” is free to read here on the web, and the Cyber Security Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Cyber Security Academy course, upgrade to CoddyKit PRO.
What will I learn in “Threat Modeling with STRIDE and PASTA”?
Apply STRIDE to decompose systems and PASTA for a risk-centric threat model workshop. You practise Cyber Security Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start Cyber Security Academy?
No prior experience is required. Cyber Security Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 1 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Threat Modeling with STRIDE and PASTA” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this Cyber Security Academy lesson?
Yes. Every Cyber Security Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- Threat Modeling with STRIDE and PASTA
- Risk Frameworks: NIST CSF and ISO 27001
- Security Control Selection and Gap Analysis
- Security Audit and Compliance Reviews