Interpreting Threat Model Results
AegisShield generates comprehensive threat intelligence across multiple dimensions. This guide helps you understand each component of the output and how to use it effectively.Threat Model Structure
When you click “Generate Threat Model” in Step 3, AegisShield creates a multi-layered analysis:- Improvement Suggestions - Recommendations to enhance your application description
- STRIDE Threat Model - Categorized threats across all six STRIDE categories
- Attack Tree - Visual representation of attack paths
- MITRE ATT&CK Mapping - Tactics, techniques, and procedures (TTPs)
- NVD Vulnerabilities - Known CVEs from the National Vulnerability Database
- AlienVault OTX Data - Industry-specific threat intelligence
Understanding Improvement Suggestions
The first section provides feedback on your application description. Fromstep3_threat_model.py:222-226:
- Update your Step 1 description with the suggested details
- Regenerate the threat model for more precise results
- These suggestions help AegisShield provide more targeted threats
STRIDE Threat Model
The core threat model is organized using the STRIDE methodology. Each threat includes:Threat Model Format
Fromthreat_model.py:66-88, threats are displayed in a table:
| Threat Type | Scenario | Potential Impact | Assumptions |
|---|---|---|---|
| Spoofing | An attacker could create a fake OAuth2 provider and trick users into logging in through it. | Unauthorized access to user accounts, data theft, credential compromise | - Assumption: Users don’t verify the OAuth2 provider URL (Role: End User, Condition: Lack of security awareness) - Assumption: The application doesn’t implement OAuth2 state parameter validation (Role: Developer, Condition: Incomplete implementation) |
Threat Categories (STRIDE)
Spoofing
Identity-based threats where attackers impersonate users, systems, or services.Common scenarios:
- Fake authentication providers
- Man-in-the-Middle attacks intercepting credentials
- Session token theft and replay
- DNS spoofing to redirect traffic
Tampering
Data integrity threats where attackers modify data or code.Common scenarios:
- SQL injection modifying database records
- Parameter tampering in API requests
- Malicious code injection in uploaded files
- Configuration file modification
Repudiation
Accountability threats where actions can’t be traced back to users.Common scenarios:
- Missing audit logs for sensitive operations
- Log file tampering or deletion
- Unsigned transactions
- Non-repudiable actions
Information Disclosure
Confidentiality threats where sensitive data is exposed.Common scenarios:
- API responses leaking sensitive data
- Error messages revealing system details
- Unencrypted data transmission
- Excessive permissions exposing data
Denial of Service
Availability threats where systems become unavailable.Common scenarios:
- Resource exhaustion attacks
- Rate limiting bypass
- Algorithmic complexity attacks
- Distributed denial of service (DDoS)
Elevation of Privilege
Authorization threats where attackers gain unauthorized access levels.Common scenarios:
- Privilege escalation through API manipulation
- Insecure direct object references (IDOR)
- JWT token manipulation
- Path traversal to access admin functions
Understanding Assumptions
Each threat includes assumptions that must be true for the threat to materialize. Fromthreat_model.py:73-81:
Assumption structure:
- Assumption: The specific condition that must exist
- Role: Who is responsible (Developer, User, Admin, Attacker)
- Condition: When this assumption holds true
Pay special attention to assumptions where the Role is “Developer” or “System Administrator” - these represent risks you can directly control and mitigate.
Attack Tree Visualization
The attack tree provides a visual representation of how threats can be exploited. Fromstep3_threat_model.py:259-293, AegisShield generates a Mermaid diagram:
How to read attack trees:
- Root node: The attacker’s ultimate goal
- Branches: Alternative attack paths
- Leaf nodes: Specific attack techniques
- Paths: Sequences of steps an attacker might take
MITRE ATT&CK Mapping
AegisShield maps each threat to the MITRE ATT&CK framework. Fromstep3_threat_model.py:236-256, the output includes:
MITRE ATT&CK Components
Technique Name
Human-readable name for the attack technique.Examples: Valid Accounts, Phishing, Brute Force, SQL Injection
Technique ID
Unique identifier in the ATT&CK framework (format: T####).Use this to:
- Search for real-world examples on the MITRE ATT&CK website
- Find detection rules and signatures
- Research defense strategies
ATT&CK URL
Direct link to the technique documentation.Contains:
- Detailed technique description
- Examples from real attacks
- Detection methods
- Mitigation strategies
How AegisShield Maps to MITRE
Fromstep3_threat_model.py:69-76, the mapping process:
- Fetches STIX data for your application type
- Processes threats with keywords (from
threat_model.py:140) - Matches keywords to MITRE techniques
- Returns relevant tactics and techniques
- Threat keywords:
["injection", "database", "sql"] - Matched techniques: T1190 (Exploit Public-Facing Application), T1059 (Command and Scripting Interpreter)
National Vulnerability Database (NVD) Results
AegisShield searches the NVD for known vulnerabilities in your technology stack. Fromstep3_threat_model.py:295-304:
Understanding CVE Information
- CVE ID: Common Vulnerabilities and Exposures identifier
- CVSS Score: Severity rating (0-10 scale)
- 0.1-3.9: Low
- 4.0-6.9: Medium
- 7.0-8.9: High
- 9.0-10.0: Critical
- Description: Details about the vulnerability
- Published Date: When the CVE was disclosed
- References: Links to patches, advisories, and details
AlienVault OTX Threat Intelligence
The final section includes industry-specific threat intelligence. Fromstep3_threat_model.py:150-154:
- Active threat actor groups
- Campaign patterns
- Indicators of Compromise (IOCs)
- Attack methodologies
DREAD Risk Assessment (Step 5)
In Step 5, you can generate a DREAD assessment to prioritize threats. Fromstep5_dread_assessment.py:49-52 and dread.py:44-51:
| Threat Type | Scenario | Damage Potential | Reproducibility | Exploitability | Affected Users | Discoverability | Risk Score |
|---|---|---|---|---|---|---|---|
| Spoofing | OAuth2 provider impersonation | 8 | 6 | 5 | 9 | 7 | 7.00 |
| Tampering | SQL injection in search | 9 | 8 | 7 | 8 | 6 | 7.60 |
DREAD Scoring Scale
Each factor is scored 1-10 (fromdread.py:98-102):
Damage Potential - How severe is the impact?
- 1-3: Minimal damage
- 4-6: Moderate damage, limited data loss
- 7-10: Catastrophic damage, complete system compromise
- 1-3: Very difficult, specific conditions
- 4-6: Somewhat reproducible
- 7-10: Easily reproducible every time
- 1-3: Requires advanced skills and tools
- 4-6: Requires some skill and tools
- 7-10: Novice with publicly available tools
- 1-3: Very few users or systems
- 4-6: Some users or systems
- 7-10: All users or systems
- 1-3: Very hard to discover
- 4-6: Somewhat discoverable
- 7-10: Obvious, easily found
Prioritize threats with Risk Score ≥ 7.0 for immediate remediation. These represent high-likelihood, high-impact risks.
Test Cases (Step 6)
AegisShield generates Gherkin-syntax test cases to validate security controls. Fromstep6_test_cases.py:44-48:
- Import into your testing framework (Cucumber, Behave, SpecFlow)
- Implement step definitions
- Run as part of security regression testing
- Validate that mitigations are properly implemented
Downloading Results
Each step provides a download button. Fromstep3_threat_model.py:366-371:
- Step 3: Download all threat model results (markdown format)
- Step 5: Download DREAD assessment
- Step 6: Download test cases
- Step 7: Generate comprehensive PDF report
Taking Action on Results
After reviewing the threat model:Prioritize Threats
Use DREAD scores to rank threats. Focus on:
- Risk Score ≥ 7.0
- High Damage Potential (8-10)
- High Exploitability (7-10)
Review Mitigations
Go to Step 4 to generate specific mitigation strategies for each threat category.
Implement Controls
Apply mitigations based on:
- Technical feasibility
- Cost vs. risk reduction
- Compliance requirements