STRIDE threat modeling workshop workflow for authorized product and system reviews: scope and DFDs, per-element STRIDE analysis, risk ranking, mitigations, and living model updates. Use when threat model, STRIDE, 威胁建模, DFD, attack surface workshop, security design review, or pre-build architecture risk assessment in org-owned systems.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
A direct command skips the review prompt. Inspect the source before running it.
STRIDE threat modeling workshop workflow for authorized product and system reviews: scope and DFDs, per-element STRIDE analysis, risk ranking, mitigations, and living model updates. Use when threat model, STRIDE, 威胁建模, DFD, attack surface workshop, security design review, or pre-build architecture risk assessment in org-owned systems.
STRIDE Threat Modeling (Workshop Workflow)
Run structured threat modeling for systems you own or are contracted to
assess. This skill is design and process methodology — identify threats,
document residual risk, and drive mitigations — not an exploit playbook.
Scope And Authorization
In scope: Org products, internal platforms, features under change control,
design docs, and authorized security design reviews / red-team planning inputs.
Out of scope: Using model outputs to attack third-party systems without
written authorization; speculative “how to break X” without a system under review.
Prefer documented architecture (designs, OpenAPI, deploy diagrams) over
invasive discovery. If inventory is missing, hand host/API recon to
recon-and-methodology first, then return here.
Treat model artifacts as sensitive: do not paste real secrets, production
connection strings, or unrestricted customer data into diagrams or tickets.
Redact credentials, tokens, PII, and internal-only hostnames from shared reports.
Use When
Building or refreshing a threat model for a service, feature, or platform
Facilitating a STRIDE workshop (design review, sprint zero, major change)
Apply per trust-boundary-crossing element (process, data store, data flow,
external entity, interactive UI) — not once for the whole system.
Letter
Category
Design question
S
Spoofing
Can an actor forge identity (user, service, device, message origin)?
T
Tampering
Can data or code be modified in transit or at rest without detection?
R
Repudiation
Can an actor deny an action because logs/audit are weak or mutable?
I
Information disclosure
Can unauthorized parties read sensitive data or metadata?
D
Denial of service
Can availability or capacity be degraded by abuse or failure?
E
Elevation of privilege
Can a lower-trust actor gain higher privileges or cross tenancy?
Variants: Some orgs add Privacy (LINDDUN-style) or Abuse cases as
companion lanes; keep them labeled separately so security boundary issues stay
distinct from pure policy/safety findings.
Workflow
1. Kickoff — lock scope and success criteria
Name the system under model (SUM): product, service, feature, or change.
Record owners (eng, product, security), review date, and model version.
Data stores: DB, cache, object storage, queues, secrets stores, logs.
Data flows: sync/async, protocol class (HTTPS, gRPC, queue, WS).
Trust boundaries: internet ↔ edge, edge ↔ app, app ↔ data, tenant ↔
tenant, admin plane ↔ user plane, CI ↔ runtime, third-party ↔ org.
Produce at least two levels if complex: context (L0) and one L1 for the
change under review.
Mark high-value assets: credentials, PII, money movement, admin actions,
signing keys, model weights, export pipelines.
Keep diagrams in version control next to the design doc; re-export when topology changes.
4. STRIDE analysis (workshop loop)
For each element that crosses or sits on a trust boundary:
Walk S-T-R-I-D-E with the table above; skip only with a written “N/A + why.”
For each plausible threat, capture a threat entry:
Field
Content
ID
Stable id (TM-042)
Element
DFD node/edge
STRIDE
One primary category (note secondaries)
Description
Who does what to what asset
Preconditions
Trust assumption that must fail or be weak
Impact
Confidentiality / integrity / availability + business
Likelihood
Org scale (H/M/L or numeric)
Existing controls
AuthZ, crypto, validation, rate limit, audit…
Proposed mitigation
Design or control change
Status
Open / mitigated / accepted / transferred
Owner + due
Named human, date
Prefer concrete scenarios over category labels alone
(“attacker replays admin JWT from log leak” beats “spoofing”).
Avoid pure exploit recipes; stop at abuse condition + control gap.
Deduplicate: one root cause → one entry with multiple STRIDE tags if needed.
5. Risk rank and decide
Score with the org’s risk matrix (do not invent a second scale if one exists).
Bucket work: block release, fix this quarter, backlog, accept with sign-off.
For accepted risk: record approver, expiry/review date, and compensating detection.
Map mitigations to owners: architecture, app code, platform, process, vendor.
6. Link mitigations to delivery
Mitigation type
Next skill / action
Secure implementation, validation, authZ
code-quality-standards
Secrets storage, injection at runtime, rotation
secrets-management-hygiene
Dependency trust, SBOM, provenance
sbom-and-supply-chain
Audit completeness, no secret-in-logs
logging-message-style
Authorized verification of residual risk
recon-and-methodology → class skills
CI gates for controls
ci-cd-pipeline-patterns (if present)
Write mitigations as testable requirements (“admin export requires MFA +
audit event with actor id”), not slogans (“be secure”).
7. Close the workshop and maintain the model
Publish: diagrams + threat register + decision log in the team’s SSOT (wiki/repo).
Attach model version to the release checklist or ADR for the change.
Triggers to reopen: new trust boundary, new data class, new admin surface,
auth change, third-party integration, public exposure, major dependency shift.
Retire threats that no longer apply; never leave stale “open” items without owners.
Workshop Facilitation Tips
Time-box STRIDE per element (e.g., 5–8 minutes); park deep dives in a parking lot.
Require multi-role attendance: eng + product + (security or experienced reviewer).
Challenge “the WAF/mesh will handle it” — name the control and residual cases.
Separate safety/abuse debates from authZ/data threats when product is AI-heavy
(ai-ml-security for ML-specific context).
End with top 5 risks visible to leadership; keep full register for builders.
Risks ranked with org matrix; acceptances signed with review date
Mitigations written as testable requirements and routed (code / secrets / SBOM / logging / test)
Artifacts published to SSOT; release or ADR link present
Reopen triggers defined; no unowned open Critical/High items
Reports redacted (no live secrets/PII); methodology not turned into off-scope attacks
Rules
Methodology and design risk first; authorized verification second.
Evidence from architecture and controlled review beats generic threat lists.
One primary category per entry; link related entries instead of mega-threats.
Residual risk is a decision, not silence — record who accepted what until when.
Keep diagrams and registers versioned next to the system they describe.
Do not expand modeling into unauthorized offensive operations against third parties.
Note
This skill is the design-time front door for structured STRIDE workshops.
When a threat becomes a concrete vulnerability test or implementation task,
switch primary skill and keep the threat id as the traceability key.