threat_model View
The threat_model view visualizes security architectures through the lens of STRIDE threat modeling, trust boundaries, adversary attack vectors, and mitigating controls.
Visual Projection
STRIDE Threat Model View showing untrusted zones, DMZ boundaries, threats, and mitigating controls
Purpose & Target Audience
- Target Audience: Security Architects, AppSec Engineers, DevSecOps Leads, Penetration Testers.
- Primary Use Cases:
- Threat modeling enterprise architectures during design phases (STRIDE analysis).
- Verifying that sensitive data stores reside behind appropriate
trust_boundaryperimeters. - Ensuring every identified
threatorvulnerabilityhas a corresponding mitigatingcontrol. - Auditing zero-trust architecture enclaves and mutual TLS enforcement.
Supported Entity Types
| Entity Type | Security Role | Description |
|---|---|---|
trust_boundary | Perimeter Frame | Network zones, DMZs, sandboxes, and enclaves. |
threat | Adversary Vector | STRIDE threat models (Spoofing, Tampering, etc.). |
control | Safeguard | Technical, cryptographic, or IAM preventive/detective controls. |
vulnerability | Flaw / Weakness | Known CVE bulletins and architectural weaknesses. |
system, app | Asset Target | Software workloads and API entry points subjected to attack. |
data_object | Target Asset | High-value customer PII, keys, or cardholder data. |
Supported Relationships & Verbs
| Relationship Verb | Source Entity | Target Entity | Security Meaning |
|---|---|---|---|
encloses | trust_boundary | system, app, infra, data_object | Perimeter containment |
targets | threat, vulnerability | system, app, component, data_object | Attack vector projection |
mitigates | control | threat, risk_scenario | Safeguard mitigation |
protects | control, trust_boundary, system | system, app, component, data_object, infra, actor | Asset protection (including Encryption and Authentication mechanisms) |
Filtering & Layout Recommendations
- Recommended Layout:
auto_layout TopToBottomor LeftToRight (untrusted zone to trusted enclave). - Common Predicates:
include threat where likelihood == "High" || likelihood == "Critical": High-priority threat vectors.include control where implementation_status == "Implemented": Current defensive posture.
Complete DSL Example
views {
threat_model v_payment_stride "PCI Cardholder Threat Model" {
# Select boundaries, assets, threats, and safeguards
include trust_boundary
include sys_payment_gateway
include threat
include control
include vulnerability
# Explicitly include security verbs
include_verb targets both
include_verb mitigates both
include_verb encloses both
include_verb protects both
# Layout from untrusted ingress to core enclave
auto_layout TopToBottom
# Visual highlights for critical threats
style threat where likelihood == "Critical" {
css_class "threat-critical-glow"
icon "alert-triangle"
}
}
}