threat-modeling について
セキュリティおよび開発チーム向けの STRIDE 脅威モデリングスキルです。システム範囲やデータフロー図の整理からリスク評価、対策までを導き、チケットやテストに落とし込める成果物を作成します。
主な機能
- 01システム範囲と資産の定義
- 02データフローと信頼境界の図示
- 03各要素への STRIDE 適用
- 04影響度と可能性の評価
- 05対策をチケットとテストに変換
- 06チェックポイントで網羅性を確認
活用シーン
- 01新規システムの脅威モデル作成
- 02API やデータフローのリスク確認
- 03セキュリティ対策のバックログ追加
- 04重要な処理の不正利用テスト作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ bobmatnyc/ claude-mpm-skills --skill threat-modelingインストール後、Claude Code で/threat-modelingを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
metadata.jsonreferences/common-threats-and-mitigations.mdstride-workshop.mdtemplates.md詳細
脅威モデリング(STRIDE)
ワークフロー
- スコープ — システム境界、資産(PII、認証情報、決済情報)、可用性要件(SLO/SLA)を特定します。
- データフロー図 — アクター、エントリーポイント、データストア、外部依存関係をマッピングします。信頼境界(パブリックインターネット → エッジ → 内部 → データベース → サードパーティー)を明示します。
- 要素ごとの STRIDE 分析 — 図の各要素について、STRIDE の 6 つのカテゴリ(なりすまし、改ざん、否認、情報漏えい、サービス拒否、権限昇格)をすべて確認し、脅威を記録します。
- リスクスコア — 各脅威の影響度(低/中/高)と発生可能性(低/中/高)を評価します。影響度が高く、発生可能性が中または高の項目を優先します。
- 緩和策 — 優先する各脅威を、エンジニアリングタスク、検証タスク(テスト、アラート)、運用上の対策(ランブック、アクセスレビュー)に落とし込みます。
- チケットとテスト — 緩和策のバックログ項目を作成し、重要なフローに不正利用ケースのテストを追加します。継続的な検証のため、PR チェックリスト項目を追加します。
例:脅威登録表の行
| 要素 | STRIDE | 脅威 | 影響度 | 発生可能性 | 緩和策 | 担当者 | ステータス |
|---|---|---|---|---|---|---|---|
| API Gateway | なりすまし | セッション失効後に盗まれた JWT が再利用される | 高 | 中 | 有効期間の短いトークン(TTL 15 分)、リフレッシュトークンのローテーション、各リクエストでの失効リスト確認 | セキュリティ | 未対応 |
この 1 行から、3 つの成果物が作成されます。エンジニアリングチケット(失効リストのミドルウェアを実装する)、テスト(失効したトークンが TTL の期間内に 401 を返すことを検証する)、PR チェックリスト項目(新しいエンドポイントの認可チェック)です。
検証チェックポイント
最終確定の前に、漏れがないことを確認します。
- データフロー図のすべての要素に、少なくとも 1 つの STRIDE 項目がある
- 影響度が高いすべての脅威に、担当者と緩和策が割り当てられている
- 各緩和策が、バックログチケットまたはテストケースに対応している
- 脅威モデルのドキュメントに、前提条件とスコープ境界が含まれている
- 新しいセキュリティ要件を PR チェックリストに反映している
成果物(完了の定義)
データフロー図、脅威登録表、チケットとテストに落とし込まれた緩和計画を作成します。
次に読み込む項目(参考資料)
references/stride-workshop.md— ワークショップの手順と DFD のガイダンスreferences/common-threats-and-mitigations.md— 緩和策を含む脅威カタログreferences/templates.md— ドキュメントとチケット用のコピー&ペースト可能なテンプレート
コメント
Markdown 対応