mcpbeat

Security Threat Model

majiayu000/security-threat-model

Threat-model product features, APIs, data flows, secrets, permissions, supply-chain changes, auth boundaries, and risky code paths before or during implementation. Use when touching authentication, authorization, payments, secrets, user data, uploads, webhooks, admin tools, innerHTML/eval/exec, dependency upgrades, or cross-tenant access.

622 tokens
context cost
the whole folder, loaded on every use
2
files
instructions only
0
copies elsewhere
how many repositories repackaged it
242
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/majiayu000/spellbook --skill security-threat-model

The instruction itself

6 sections, as written by the author

Security Threat Model

Purpose

Use this skill before implementing or approving security-sensitive changes. It complements auth-security and server-security by mapping assets, attackers, trust boundaries, and concrete controls.

Scope First

Identify:

  • Assets: credentials, tokens, user data, tenant data, money movement, admin actions.
  • Actors: anonymous user, authenticated user, tenant admin, internal operator, compromised dependency.
  • Trust boundaries: browser/server, service/service, tenant/tenant, CI/runtime, third-party callbacks.
  • Entry points: API routes, CLI commands, jobs, webhooks, uploads, config files.
  • Existing controls: validation, authz, rate limits, audit logs, secret storage.

Threat Checklist

Check at least:

  • Spoofing: can an identity, tenant, callback, or service be forged?
  • Tampering: can payloads, configs, migrations, artifacts, or logs be altered?
  • Repudiation: is there an audit trail for sensitive actions?
  • Information disclosure: can secrets, PII, logs, or tenant data leak?
  • Denial of service: can expensive paths be amplified?
  • Elevation of privilege: can user or service permissions expand?
  • Supply chain: can dependencies, scripts, CI, or generated files introduce risk?

Required Controls

Every finding needs one of:

  • preventive control in production code,
  • detective control with alerting,
  • compensating manual control with owner and expiry,
  • explicit accepted risk with rationale.

Do not accept "warn and continue" for authz, secrets, tenant isolation, injection, or payment/security-critical failures.

Output Shape

scope:
assets:
trust_boundaries:
entry_points:
threats:
required_controls:
tests_or_probes:
residual_risks:
review_gate:

For implementation work, include exact files and verification commands that prove the controls are active.

How to use it

Copy the folder

Take majiayu000/security-threat-model from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.