From universe
Generates structured STRIDE threat models for features/modules. Maps attack surfaces using shieldkit_surface, identifies threats/actors, assesses risks, suggests mitigations.
How this skill is triggered — by the user, by Claude, or both
Slash command
/universe:threat-modelThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Generate a structured threat model for a feature or module using the STRIDE methodology.
Generate a structured threat model for a feature or module using the STRIDE methodology. Identifies assets, threat actors, attack surfaces, potential attacks, and mitigations.
Threat modeling BEFORE building is cheaper than finding vulnerabilities AFTER shipping. This skill provides the security thinking that most development skips.
Read the target feature or module. If a specific file/directory was provided, focus there. Otherwise, ask what feature or system to model.
Understand:
With shieldkit-mcp (preferred): Call shieldkit_surface to get structured attack surface
mapping — all endpoints with auth status, env file coverage, and external boundaries.
Use this as the foundation for the attack surface map.
Without shieldkit-mcp: Discover manually by reading route files and handler directories.
Identify every point where external input enters the system:
For each entry point, note: what data comes in, who can send it, and what validation exists.
For each entry point, systematically check six threat categories:
| Threat | Question | Example |
|---|---|---|
| Spoofing | Can someone pretend to be someone else? | Forged auth token, session hijack |
| Tampering | Can someone modify data they shouldn't? | SQL injection, parameter manipulation |
| Repudiation | Can someone deny they did something? | Missing audit logs, unsigned actions |
| Information Disclosure | Can someone access data they shouldn't? | IDOR, error messages, logs |
| Denial of Service | Can someone make this unavailable? | No rate limiting, resource exhaustion |
| Elevation of Privilege | Can someone gain unauthorized access? | Mass assignment, role escalation |
Not every threat applies to every entry point. Skip categories that genuinely don't apply and note why.
For each identified threat, assess:
Priority Matrix (Likelihood x Impact):
| Impact: Critical | Impact: High | Impact: Medium | Impact: Low | |
|---|---|---|---|---|
| Likelihood: High | P0 | P0 | P1 | P2 |
| Likelihood: Medium | P0 | P1 | P2 | P3 |
| Likelihood: Low | P1 | P2 | P3 | P3 |
Documenting skipped categories: For each STRIDE category that does NOT apply to a given entry point, include a one-line note explaining why. Example:
| - | Repudiation | N/A -- read-only endpoint, no state mutations to log | /api/health | - | - | - |
This prevents reviewers from wondering whether a category was overlooked vs. intentionally skipped.
For each threat, provide a specific mitigation:
Report format:
## Threat Model — {feature/module name}
### Overview
{What this feature does and why it matters from a security perspective}
### Assets
{What data/resources need protecting}
### Trust Boundaries
{Where trusted meets untrusted — diagram if helpful}
### Attack Surface
{Entry points enumerated}
### Threats
| # | Category | Threat | Entry Point | Likelihood | Impact | Priority |
|---|----------|--------|-------------|------------|--------|----------|
| 1 | Tampering | SQL injection via search | /api/search?q= | High | Critical | P0 |
| 2 | Spoofing | Session fixation | /auth/login | Medium | High | P1 |
| ... |
### Mitigations
1. **T1: SQL injection** — Use parameterized queries for search endpoint.
Status: NOT MITIGATED — current code uses string interpolation.
2. **T2: Session fixation** — Regenerate session after login.
Status: MITIGATED — auth library handles this automatically.
### Summary
{n} threats identified: {critical} P0, {high} P1, {medium} P2, {low} P3
{n} already mitigated, {n} need implementation
/scan — Use to verify whether identified threats have corresponding vulnerabilities in code/security-review — Use on the highest-risk code identified by the threat modelreferences/stride-guide.md — Detailed STRIDE methodology with examples for each
category and common patterns by application typenpx claudepluginhub mbwsims/claude-universe --plugin universeGenerates concrete, developer-focused threat models for features, components, or systems, with attack scenarios, risks, and actionable mitigations.
Conducts structured threat modeling using OWASP Four-Question Framework and STRIDE. Generates threat matrices with risk ratings, mitigations, prioritization for attack surface analysis and security architecture reviews.
Systematically identify and document threats using the STRIDE framework (Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, Elevation of Privilege). Use when designing systems, reviewing architectures, conducting security design reviews, or updating threat models.