PlaygroundCatalog › Security Threat Model
ST

Security Threat Model

🔵 Stable🕐 updated 2026-08-21 🔷 SkillSpec L3 pm-engineering

Write a STRIDE-based threat model for a service or feature. Use when asked to produce a threat model, document security risks, identify attack vectors, assess a service's security posture, or prepare for a security design review. Produces a structured threat model covering assets, trust boundaries, STRIDE threat enumeration per component, risk scores, mitigation controls, and residual risk sign-off.

📚 Based on STRIDE threat modeling — Microsoft / Adam Shostack

▶ Run it free — no key needed 📝 Grade your existing draft View SKILL.md ↗

What to give it

Service name and description — what the service does, who uses it
Architecture overview — components, dependencies, data flows (a diagram description or ASCII diagram is fine)
Deployment environment — cloud provider, VPC/network topology, where it runs (Kubernetes, ECS, VMs, serverless)
Data sensitivity — what data does this service handle? PII, payment data, credentials, internal-only?
Existing controls — authentication method, encryption in transit/at rest, current WAF/firewall, existing security scanning
Trust levels — who are the principals? (anonymous public, authenticated users, internal services, admins)

✅ The bar it holds itself to

Every skill in this library self-verifies — these are this skill's own quality checks, straight from its definition.

Every trust boundary is named and its authentication mechanism is specified — not left as "TBD"
Every Critical and High risk in the risk register has a mitigation with a named owner and a target date
Every accepted risk has a named risk owner and a review date — no unowned accepted risks
The asset register includes data sensitivity levels and at least one entry for credential material
STRIDE analysis covers all major components — not just the API layer
Mitigation actions are specific enough to become a ticket (not "improve security")
The ASCII trust boundary diagram matches the architecture description provided

⚠️ What it refuses to do

Do not restrict STRIDE analysis to only the API layer — threats exist at every component including the database and internal services
Do not leave mitigations as vague directives like "improve security" — every mitigation must be specific enough to become a ticket
Do not accept risks without a named owner and a review date — unowned accepted risks are not managed risks
Do not write a threat model that covers only theoretical threats — prioritise by likelihood and impact using the risk register
Do not omit the asset register — without knowing what is being protected, the STRIDE analysis has no anchor

Install

npx pm-claude-skills add --agent claude   # or codex · cursor · gemini · hermes
# or one-line MCP (every skill, any client):
claude mcp add pm-skills -- npx -y pm-claude-skills-mcp

Start with

Related skills

🔌 Embed this skill

Drop this on your blog, docs, or site — it renders a "Run this skill" card:

<div data-pm-skill="security-threat-model"></div>
<script src="https://mohitagw15856.github.io/pm-claude-skills/embed.js" async></script>

💬 Discussion

Security Threat Model is one of 1174 open-source professional AI agent skills — all SkillSpec L3. Try them all in the browser · ⭐ Star on GitHub · Browse the full catalog