脅威モデリング

システムに対する潜在的な脅威を体系的に特定・評価し、対策を設計するセキュリティ手法

セキュリティ設計

脅威モデリングとは

脅威モデリング (Threat Modeling) は、システムに対する潜在的な脅威を体系的に特定・評価し、設計段階で対策を組み込むセキュリティ手法である。「何を守るか」「誰が攻撃するか」「どう攻撃されるか」「どう防ぐか」を構造的に分析する。

STRIDE モデル

Microsoft が開発した脅威の分類フレームワーク。

脅威 説明 対策例
Spoofing (なりすまし) 他人になりすます 認証 (Cognito, MFA)
Tampering (改ざん) データを不正に変更 整合性チェック (署名, ハッシュ)
Repudiation (否認) 行為を否定する 監査ログ (CloudTrail)
Information Disclosure (情報漏洩) 機密データの流出 暗号化 (KMS, TLS)
Denial of Service (サービス拒否) サービスを利用不能にする WAF, レート制限
Elevation of Privilege (権限昇格) 権限を不正に取得 最小権限 (IAM)

脅威モデリングの手順

1. システムの図を描く (データフロー図)
2. 脅威を特定する (STRIDE で分類)
3. リスクを評価する (影響度 × 発生確率)
4. 対策を設計する
5. 対策を検証する

データフロー図の例

[ブラウザ] → HTTPS → [CloudFront][API Gateway][Lambda][DynamoDB][Cognito] (認証)

信頼境界:
  ├── 外部 (ブラウザ) ← 信頼しない
  └── 内部 (Lambda, DynamoDB) ← 信頼する

AWS での脅威と対策

脅威 攻撃例 AWS での対策
なりすまし 盗まれたトークンで API 呼び出し Cognito + MFA
改ざん API リクエストの改ざん API Gateway のリクエスト検証
情報漏洩 S3 バケットの公開設定ミス S3 Block Public Access
DoS 大量リクエスト WAF + API Gateway スロットリング
権限昇格 Lambda の過剰な IAM 権限 最小権限ポリシー

OWASP Top 10 との関係

OWASP Top 10 は Web アプリケーションの脅威ランキングで、脅威モデリングの入力として使える。

OWASP STRIDE
インジェクション Tampering
認証の不備 Spoofing
アクセス制御の不備 Elevation of Privilege
暗号化の不備 Information Disclosure

いつ実施するか

  • 新しいシステムの設計時 (最も効果的)
  • 大きな機能追加時
  • セキュリティインシデント後の振り返り

より深く学ぶには関連書籍が役立つ。

関連用語