DREAD Risk Assessment
AegisShield implements the DREAD (Damage, Reproducibility, Exploitability, Affected Users, Discoverability) methodology to provide quantitative risk scores for identified threats, enabling data-driven prioritization.Overview
The DREAD assessment module (dread.py) assigns numeric scores (1-10) across five dimensions, calculating an overall risk score for each threat.
5 Dimensions
Damage, Reproducibility, Exploitability, Affected Users, Discoverability
1-10 Scale
Low (1-3), Medium (4-6), High (7-10) scoring
AI-Powered
GPT-4o evaluates threats with security expertise
Prioritization
Sort by risk score for action planning
DREAD Dimensions
Damage Potential (D)
Damage Potential (D)
What it measures: The extent of harm if the threat is exploited.Scoring:
- 1-3 (Low): Minor inconvenience, limited data exposure
- 4-6 (Medium): Significant data loss, service disruption
- 7-10 (High): Complete system compromise, critical data breach
Reproducibility (R)
Reproducibility (R)
What it measures: How easily the attack can be reproduced.Scoring:
- 1-3 (Low): Requires rare conditions, complex setup
- 4-6 (Medium): Reproducible with moderate effort
- 7-10 (High): Easily reproducible, automated tools available
Exploitability (E)
Exploitability (E)
What it measures: The skill level required to exploit the threat.Scoring:
- 1-3 (Low): Requires advanced skills, custom tools
- 4-6 (Medium): Intermediate skills, some tools needed
- 7-10 (High): Novice can exploit, tools readily available
Affected Users (A)
Affected Users (A)
What it measures: The percentage or number of users impacted.Scoring:
- 1-3 (Low): Single user or small group (less than 5%)
- 4-6 (Medium): Significant subset (5-50%)
- 7-10 (High): Majority or all users (greater than 50%)
Discoverability (D)
Discoverability (D)
What it measures: How easily the vulnerability can be found.Scoring:
- 1-3 (Low): Requires source code audit, deep analysis
- 4-6 (Medium): Found with security tools, testing
- 7-10 (High): Obvious, publicly disclosed, scanner detects
Core Functions
get_dread_assessment()
Generates DREAD risk scores for all threats.OpenAI API key
OpenAI model to use
Formatted DREAD assessment prompt
dict[str, Any] - JSON object with risk assessments
dread.py:128-179
create_dread_assessment_prompt()
Creates a comprehensive prompt for DREAD scoring.Markdown-formatted threat model
MITRE ATT&CK technique mappings
NVD CVE data
Prompt creation from dread.py:64-126
dread_json_to_markdown()
Converts DREAD assessment to Markdown table.DREAD assessment JSON
str - Markdown table with risk scores
dread.py:17-62
| Threat Type | Scenario | Damage | Reprod. | Exploit. | Users | Discov. | Risk Score |
|---|---|---|---|---|---|---|---|
| Spoofing | Attacker could… | 8 | 7 | 6 | 9 | 8 | 7.60 |
Risk Score Calculation
The overall risk score is the arithmetic mean of the five dimensions:Risk calculation from dread.py:45-51
Risk scores range from 1.0 (lowest) to 10.0 (highest). Scores ≥ 7.0 typically require immediate attention.
Prioritization Strategy
Categorize by Severity
- Critical (9.0-10.0): Immediate action required
- High (7.0-8.9): Address within 1 week
- Medium (4.0-6.9): Address within 1 month
- Low (1.0-3.9): Address as resources permit
Example Assessment
DREAD assessment structure
- OAuth Spoofing: (8+6+5+9+7)/5 = 7.0 (High)
- Error Message Disclosure: (6+8+9+5+7)/5 = 7.0 (High)
Integration with Threat Intelligence
DREAD assessment incorporates:Threat Model
STRIDE threats with scenarios and impacts
MITRE ATT&CK
Real-world attack patterns and techniques
NVD CVEs
Known vulnerabilities with CVSS scores
Complete Workflow
End-to-end risk assessment
Best Practices
Consistent Scoring
Consistent Scoring
Apply the same scoring criteria across all threats. Document your interpretation of the 1-10 scale for your organization.
Regular Re-assessment
Regular Re-assessment
Re-evaluate risk scores when:
- New vulnerabilities are disclosed
- Threat landscape changes
- Mitigations are implemented
- System architecture evolves
Stakeholder Review
Stakeholder Review
Have security team, developers, and business stakeholders review high-risk threats together to ensure scoring reflects organizational priorities.
Track Trends
Track Trends
Monitor how risk scores change over time. Decreasing scores indicate effective security improvements.
Related Features
- Threat Modeling - Generate STRIDE threats
- MITRE ATT&CK - Map to attack techniques
- Mitigations - Generate mitigation strategies
- Test Cases - Create security tests