製品管理 に戻る

脅威モデリング テンプレート

製品を基礎から安全に保護します。脅威モデリング テンプレートは、データフローを視覚的にマップ化し、侵害に至る前に潜在的な脆弱性を特定して、アーキテクチャに信頼を直接組み込むのに役立ちます。

9 のテンプレート

もっと見る

脅威モデリング テンプレートとは?

脅威モデリング テンプレートは、セキュリティーエンジニアや開発者がシステムのアーキテクチャを可視化し、攻撃に対して脆弱な箇所を特定するために使う構造化されたフレームワークです。STRIDEPASTAのような手法を用いて、データ漏えい、不正アクセス、サービス停止などの脅威を体系的に洗い出します。基盤にデータフロー図(DFD)を用いることで、これらのテンプレートは"Security by Design"を単なるバズワードではなく現実の設計方針にします。

「攻撃者」監査:隠れた欠陥を見つける3つの方法

脅威モデリングは、攻撃者の視点で考えられてこそ効果を発揮します。Miro や Excel シートでモデルを確定する前に、これらの専門家による3つの「ヘルスチェック」を適用してください:

1. "Trust Boundary" の監査

監査: 図が一つの大きなクラウドになっており、"Public" と "Internal" のデータの境界線が明確でないのではありませんか? 対策:セグメンテーションの監査を行ってください。プロフェッショナルな脅威モデルでは、必ずトラスト境界を定義する必要があります。信頼できないソース(例: ユーザーのブラウザー)から信頼された場所(例: あなたのデータベース)へデータが渡る箇所はすべて、リスクの高い侵入口です。テンプレートでこれらの "Crossings" を強調していない場合、攻撃の90%が発生する箇所を見落としています。

2. "STRIDE" 分類テスト

監査: 脅威の記述が曖昧になっていませんか(例: "Someone might hack us")? 対策:分類の監査を行ってください。STRIDEフレームワークを使用して、すべての潜在的な脅威を分類してください:

  • Sなりすまし: 正当なユーザーを装えるか?

  • T改ざん: 転送中または保存時のデータを改ざんできますか?

  • R否認: ユーザーが自分の行為を否認できますか?

  • I情報漏洩: 機密データが漏洩しますか?

  • Dサービス拒否: システムをダウンさせられますか?

  • E権限昇格: 通常のユーザーが管理者になれますか?

3. "Mitigation(緩和策)" の説明責任

監査:脅威モデルは解決策のない「Scary List」に過ぎませんか? 対策:是正を目的とした監査を行ってください。 テンプレートで特定されたすべての脅威は、特定のセキュリティ コントロールに紐づけられている必要があります。 「Tampering」のリスクが特定された場合、緩和策として「デジタル署名」や「TLS 1.3」が考えられます。 脅威モデルは「生きたドキュメント」です—リスクが受け入れられる、緩和される、または移転されるまで完了しません。

戦略的フレームワーク:どの脅威モデルが必要ですか?

チームの技術力に合った手法を選択してください:

  • STRIDE (開発者向け):

    • 適しているチーム: ソフトウェアアーキテクチャの欠陥を再現可能かつ論理的に発見したいエンジニアリングチーム。

  • PASTA (リスク重視):

    • 適しているチーム: Business に合わせたセキュリティー。PASTA は 攻撃シミュレーションと脅威分析のプロセス の略で、セキュリティーを Business の目標に合わせることに重点を置きます。

  • V.A.S.T. (アジャイル向け):

    • 適しているチーム: 大規模エンタープライズの DevOps 向け。自動化と脅威モデリングを CI/CD パイプラインに組み込むことに重点を置きます。

脅威モデリング テンプレートの主要コンポーネント

高性能な脅威モデリング ボードには、次の 5 つのコア要素が必要です:

  • システムアーキテクチャ / DFD: プロセス、データストア、インタラクター(ユーザー)、データフローを視覚化したマップ。

  • 資産インベントリ: 保護対象である "最重要資産" の一覧(例: PII、クレジットカード情報、管理者の認証情報)。

  • 脅威トレーサビリティマトリックス:脅威影響発生確率、およびリスクスコアを結び付ける表。

  • 攻撃ツリー: 攻撃者が特定の目標に到達するために取り得るさまざまな経路を示す分岐図。

  • 検証チェックリスト: 緩和策が実際にコードに実装されていることを確認するための最終セクション。