Written by WizLANSCOPE編集部
目 次
脅威モデリングとは、システム開発の上流工程において潜在的な脅威を特定し、適切な対策を講じるためのセキュリティ手法です。
手戻りによる開発コストの増大や、セキュリティインシデントによる事業への深刻な影響を防ぐためには、開発のより上流の工程からセキュリティを考慮する「シフトレフト」の考え方が不可欠です。
このシフトレフトを実現するうえで中核となるアプローチが、「脅威モデリング」です。
本記事では、脅威モデリングの基本から実施方法、成功のポイントまでをわかりやすく解説します。
▼本記事でわかること
- 脅威モデリングの概要
- 脅威モデリングのメリット
- 脅威モデリングの実施方法
- 脅威モデリングのポイント
「脅威モデリングによってどのようなメリットが得られるのか」「そもそもどのように進めればよいのか」などを知りたい方はぜひご一読ください。
脅威モデリングとは

脅威モデリングとは、システム開発における要件定義や設計といった上流工程で、システムに潜む脅威を網羅的に洗い出し、分析・評価するプロセスです。
具体的には、システムのアーキテクチャやデータフローを可視化し、攻撃者が悪用する可能性のある設計上の欠陥や脆弱性を特定します。
脅威モデリングの目的は、攻撃者の視点に立ってシステムを分析し、想定される攻撃パターンをあらかじめ把握することで、セキュリティインシデントを未然に防ぐことにあります。
また、開発後のテスト段階で脆弱性を特定する「事後対応型」のセキュリティ対策とは異なり、設計段階から脅威を予測して対策を講じる「予防的」なアプローチを取る点も特徴です。
これにより、セキュリティを後付けで対応するのではなく、開発ライフサイクル全体に組み込むことが可能になります。
従来のセキュリティ対策との違い
システム開発における従来のセキュリティ対策は、ファイアウォールの設置やアンチウイルスの導入といった画一的な対策や、リリース前の脆弱性診断が中心でした。
しかし、こうした対策だけでは、システム固有の設計上の問題や、複数の要素が組み合わさって生じる複雑な脅威を見つけ出すことが難しいという課題がありました。
こうした課題に対して、脅威モデリングでは、対象システムの構造や利用状況を踏まえて、「どのような脅威が存在し、どのような攻撃を受ける可能性があるのか」を分析することができます。
その結果、従来の対策では見落とされがちだったリスクを、開発の早い段階で特定できるようになります。
脅威モデリングのメリット

開発工程に脅威モデリングを導入することは、セキュリティの強化に加え、以下のようなメリットも期待できます。
- 開発の早い段階で脆弱性に対処できる
- セキュリティ対策コストを削減できる
- 開発者全体のセキュリティ意識が向上する
詳しく確認していきましょう。
開発の早い段階で脆弱性に対処できる
脅威モデリングを導入するメリットとして、設計など開発の初期段階でセキュリティ上の問題(脆弱性)を発見できる点が挙げられます。
後半の工程やリリース後に脆弱性が見つかった場合、修正のために大幅な手戻りが発生し、時間もコストが大きく増加してしまいます。
そのため、設計段階であらかじめ脅威を特定し、適切な対策を講じておくことで、手戻りを最小限に抑え、開発スケジュールへの影響を軽減することが可能になります。
セキュリティ対策コストを削減できる
脆弱性の修正コストは、開発の後半工程になればなるほど増大する傾向があります。
そこで脅威モデリングによって上流工程でリスクを特定し、適切な対策を設計に組み込むことで、結果としてセキュリティ対策にかかる総コストの削減につながります。
また、想定される脅威に優先順位を付けることが可能になるため、限られたリソースを最も重要度の高いリスクへの対策に集中させることができます。
これにより、投資対効果の高いセキュリティ対策が実現できます。
開発者全体のセキュリティ意識が向上する
脅威モデリングは、セキュリティ担当者だけでなく、開発者やプロジェクトマネージャーなど、開発に関わるチーム全体で取り組むべきプロセスです。
例えば、開発者自身がシステムの脅威について検討するプロセスに参加することで、セキュリティに対する当事者意識の醸成が期待できます。
こうした取り組みを継続的かつ定期的に実施することで、チーム全体のセキュリティスキルや知識が向上し、セキュアな設計・開発を行う文化が組織に根付いていくでしょう。
脅威モデリングの実施方法
脅威モデリングは、一般的に次の4つのステップで進められます。
- ステップ(1):分析対象システムの可視化
- ステップ(2):潜在的な脅威の洗い出し
- ステップ(3):対策と緩和策の検討
- ステップ(4):評価と文書化
これらのステップを体系的に進めることで、脅威を網羅的かつ効率的に分析することが可能になります。
それぞれのステップについて、具体的にみていきましょう。
ステップ(1):分析対象システムの可視化
まずは、分析の対象となるシステムがどのような要素で構成されているのか、またデータがどのように流れるのかを可視化します。
データフロー図(DFD)などの手法を用いて、アプリケーション、サーバー、データベース、外部サービスとの連携などを整理し、システムの全体像を把握します。
この図は、後のステップで脅威がどこに潜んでいるかを特定するための基礎になります。
ステップ(2):潜在的な脅威の洗い出し
次に、ステップ(1)で作成した図をもとに、システムにどのような脅威が存在するのかを洗い出します。
この際、後述する「STRIDE」のようなフレームワークを活用すると、体系的かつ網羅的に脅威を特定しやすくなります。
例えば、以下のような観点で、各構成要素やデータの流れを確認しましょう。
- ユーザー認証のプロセスに、なりすましの脅威はないか
- 個人情報を保存するデータベースに、情報漏洩の脅威はないか
ステップ(3):対策と緩和策の検討
洗い出した脅威に対して、それぞれのリスクをどのように軽減するか、具体的な対策を検討しましょう。
例えば、「なりすまし」の脅威には多要素認証(MFA)の導入、「情報漏洩」の脅威にはデータの暗号化といった対策が考えられます。
また、技術的な対策だけでなく、運用ルールの整備や監視体制の構築など、組織的な対策についてもあわせて検討することが重要です。
ステップ(4):評価と文書化
最後に、検討した対策の妥当性を評価し、特定した脅威やリスク、対策の内容を文書化します。
すべての脅威に対して完璧な対策を講じることは現実的ではありません。
そのため、後述する「DREAD」などのフレームワークを用いてリスクの優先順位を評価し、どの脅威から対処すべきかを判断します。
作成した文書は、開発チームへの指示書として活用できるだけでなく、将来システムに変更が加わった際に、脅威モデルを更新するための重要な資料にもなります。
脅威の洗い出しに役立つフレームワーク
脅威モデリングを効果的に進めるためには、フレームワークを活用することが有効です。
本記事では、脅威モデリングに役立つ代表的なフレームワークを5つ紹介します。
- STRIDE
- DREAD
- PASTA
- VAST
- Trike
それぞれの特徴や活用シーンを詳しく確認していきましょう。
STRIDE
「STRIDE」とは、Microsoftが開発した脅威モデリングのフレームワークで、システムに対する脅威を6つのカテゴリに分類して分析する手法です。
| カテゴリ | 日本語訳 | 概要 |
|---|---|---|
| Spoofing | なりすまし | ・正規のユーザーやプロセスになりすます脅威 |
| Tampering | 改ざん | ・データの完全性を損なう脅威 |
| Repudiation | 否認 | ・ある操作を行ったことをユーザーが否定できる脅威 |
| Information Disclosure | 情報漏洩 | ・機密情報が不正に開示される脅威 |
| Denial of Service | サービス拒否 | ・システムの可用性を損なう脅威 |
| Elevation of Privilege | 権限昇格 | ・一般ユーザーが管理者権限などを不正に取得する脅威 |
それぞれのカテゴリの頭文字をとって「STRIDE」と名付けられています。
このフレームワークを活用することで、脅威モデリングのステップ(2)である「潜在的な脅威の洗い出し」を効率的に進められます。
また、どのような種類の脅威を考慮すべきかを体系的に整理できるため、脅威の見落としを防ぎながら、網羅的に検討することが可能になります。
出典:Microsoft Learn 「脅威 – Microsoft Threat Modeling Tool – Azure」
DREAD
DREADは、特定した脅威のリスクレベルを評価し、優先順位を決定するためのフレームワークです。
以下の5つの観点から脅威を評価し、その合計値をもとにリスクの高さを判断します。
| Damage(損害) | 脆弱性が悪用された場合に発生する可能性のある被害の大きさ |
|---|---|
| Reproducibility(再現性) | 攻撃がどの程度容易に再現できるか |
| Exploitability (悪用可能性) | 攻撃を実行するための難易度 |
| Affected users(影響を受けるユーザー) | 攻撃によって影響を受けるユーザーの範囲や人数 |
| Discoverability(発見可能性) | 攻撃者が脆弱性を発見できる可能性の高さ |
このフレームワークを活用することで、各脅威のリスクを客観的に評価できるようになります。
その結果、どの脅威に優先的に対処すべきかを把握しやすくなり、限られたリソースの中でも効果的なセキュリティ対策を進めることが可能になります。
参考:Microsoft Learn 「ドライバーの脅威モデリング – Windows drivers」
PASTA
PASTA(Process for Attack Simulation and Threat Analysis)とは、ビジネスインパクトの分析から始める、攻撃者視点の包括的な脅威モデリングの手法です。
この手法は、ビジネスリスクを基点に脅威を分析し、現実的なセキュリティ対策を導き出すことを目的としています。
PASTAは、以下の7つのステージで構成されています。
| ステージ | 内容 | |
|---|---|---|
| 1 | 目標の定義 | ・リスク分析のための目標を定義する |
| 2 | 技術的スコープの定義 | ・分析の対象となるシステムや環境など、技術的な範囲を定義する |
| 3 | アプリケーションの分析 | ・アプリケーションの構成やデータフローなどを把握する |
| 4 | 脅威の分析 | ・想定される攻撃者や脅威の種類を特定する |
| 5 | 脆弱性の分析 | ・システムに存在する可能性のある脆弱性を特定する |
| 6 | 攻撃のモデリング | ・攻撃者がどのような手順で攻撃を実行するかをモデル化する |
| 7 | リスクとビジネスインパクトの分析 | ・脅威がビジネスに与える影響を評価し、リスクを判断する |
これらのステージを順に進めることで、ビジネスへの影響を考慮しながら、体系的に脅威を特定し、適切な対策を検討できるようになります。
VAST
VASTは、Visual, Agile, and Simple Threat Modelingの略語で、アジャイル開発に適した脅威モデリング手法です。
この手法では、Visual(視覚的に)、Agile(柔軟に)、Simple(シンプルに)という考え方に基づき、システムの構成やリスクを視覚的に整理しながら、開発プロセスの中で継続的に脅威を管理することを目的としています。
VASTでは、主に以下のプロセスを通じて脅威モデリングを行います。
| プロセス | 内容 |
|---|---|
| システムの可視化 | システム構成やデータの流れを整理し、可視化する |
| 脅威の特定 | 想定される攻撃やリスクを洗い出す |
| 脅威の分析と優先順位付け | リスクの大きさを評価し、対策の優先度を決定する |
| 対策の決定と実装 | 必要なセキュリティ対策を検討し、実装する |
このように、VASTはソフトウェア開発の各段階で脅威の対策や検討を行える点が特徴です。
Trike
Trikeは、許容できるリスクを基準に考える脅威モデリング手法です。
この手法では、すべてのリスクを排除することを目的とするのではなく、どの程度のリスクであれば許容できるのかを明確にすることに重点を置いています。
そのうえで、許容できるリスクの範囲を定義し、それを超えるリスクに対して優先的に対策を講じることで、効率的にセキュリティリスクを管理します。
脅威モデリングを成功させるためのポイント

脅威モデリングは、単発の取り組みで終わらせるのではなく、組織の文化として定着させることが重要です。
継続的な効果を得るためにも、以下のポイントを意識して進めましょう。
- 適切なタイミングで実施する
- 関係者を巻き込んで実施する
- フレームワークやツールを有効活用する
それぞれのポイントを順に確認していきましょう。
適切なタイミングで実施する
脅威モデリングを実施する際は、適切なタイミングで取り組むことが重要です。
特に、システムの要件定義や設計フェーズなど、開発ライフサイクルのできるだけ早い段階で、潜在的なリスクを早期に特定し、効率的に対策を検討できます。
また、脅威モデリングは一度実施して終わるものではありません。
システムの仕様変更や新機能の追加が行われた際には、その都度脅威モデルを見直し、アップデートしていく継続的なプロセスとして運用することが重要です。
関係者を巻き込んで実施する
効果的な脅威モデリングは、セキュリティ担当者だけで完結するものではありません。
システムの仕様を熟知している開発者やアーキテクト、プロジェクトマネージャー、さらには必要に応じてビジネス部門の担当者など、システム開発に関わるさまざまな役割のメンバーが協力して実施することが重要です。
さまざまな立場の関係者が参加することで、多角的な視点から脅威を検討でき、より精度の高い分析につながります。
フレームワークやツールを有効活用する
脅威モデリングを効果的に実施するためには、フレームワークやツールの活用が欠かせません。
前述した「STRIDE」や「DREAD」といったフレームワークを活用することで、分析の抜け漏れを防ぎ、議論を体系的に整理できます。
さらに、脅威モデリングを支援するツールを利用すれば、データフロー図の作成や脅威の洗い出しを効率化することも可能です。
これらのフレームワークやツールを、自社の開発プロセスに合わせて適切に活用することが、脅威モデリングを成功させるための重要なポイントとなります。
LANSCOPE プロフェッショナルサービスの「脅威分析サービス」

LANSCOPE プロフェッショナルサービスでは、脅威分析を支援する「脅威分析サービス」を提供しています。
本サービスでは、脅威分析モデリング手法を用いて資産と脅威を分析し、対処すべきリスクの優先度を整理することで、お客様が適切なセキュリティ対策を実施できるように支援します。

具体的には、前述したフレームワーク「STRIDE」を用いて、「なりすまし」や「改ざん」などの脅威が資産に与えるリスクを評価します。
そのうえで、リスクの大きさに応じて優先順位を整理し、効果的なセキュリティ対策の実施をサポートします。
また、分析結果はレポートとして提供するため、セキュリティ対策の検討や実行に役立てることも可能です。
さらに、脆弱性の洗い出しだけでなく、実際に攻撃を受けた場合に、どの程度の影響があるのかを確認したい場合には、「ペネトレーションテスト」の実施も有効です。
LANSCOPE プロフェッショナルサービスでは、Webアプリケーションやネットワークの検証に加え、シナリオに沿ってマルウェアを模した操作を実行し、外部への情報持ち出しや感染拡大のリスクなどを検証する「ペネトレーションテスト」も提供しています。
脆弱性の洗い出しだけでなく、それを悪用された攻撃の影響範囲まで把握したいという企業・組織の方は、ぜひ LANSCOPE プロフェッショナルサービスの「ペネトレーションテスト」の実施をご検討ください。
また、「実際にどのような報告書がもらえるのか知りたい」「どの診断を受ければよいのかわからない」という方に向けて、サービス内容をわかりやすくまとめた資料もご用意しています。
こちらもぜひご活用ください。


3分で分かる!
脆弱性診断のご案内
LANSCOPE プロフェッショナルサービスの脆弱性診断でできることをわかりやすく解説!ぴったりの診断を選べるフローチャートもご用意しています。
まとめ
本記事では「脅威モデリング」をテーマに、導入するメリットや実施方法、成功のポイントなどを解説しました。
本記事のまとめ
- 脅威モデリングとは、システム開発における要件定義や設計といった上流工程で、システムに潜む脅威を網羅的に洗い出し、分析・評価するプロセス
- 脅威モデリングを導入することで、開発の早い段階で脆弱性に対処できるようになるため、セキュリティ対策にかかるコストを削減できたり、継続的に取り組むことで、開発メンバーのセキュリティ意識の向上が期待できたりする
- 脅威モデリングは一般的に、「分析対象システムの可視化」「潜在的な脅威の洗い出し」「対策と緩和策の検討」「評価と文書化」の4つのステップで進められる
- 効果的な脅威モデリングの実施には、適切なタイミングで取り組むことや、フレームワークを活用することが重要である
脅威モデリングは、開発の上流工程にセキュリティリスクの洗い出しを組み込むことで、手戻りやインシデント発生のリスクを低減させるためのセキュリティ手法です。
システムの全体像を可視化し、脅威を洗い出し、開発に関わるチーム全体で対策を検討する一連のプロセスは、安全性の高いシステムを構築する上で欠かせない取り組みといえるでしょう。
本記事で紹介したステップやポイントを参考に、ぜひ脅威モデリングの実践に取り組んでみてください。
また、「LANSCOPE プロフェッショナルサービス」では、脅威分析モデリング手法を用いて、資産および脅威から対処すべきリスクの優先順位づけを行う「脅威分析サービス」を提供しています。
お客様が適切なセキュリティ対策を実施できるよう支援いたしますので、ぜひご活用ください。

3分で分かる!
脆弱性診断のご案内
LANSCOPE プロフェッショナルサービスの脆弱性診断でできることをわかりやすく解説!ぴったりの診断を選べるフローチャートもご用意しています。
おすすめ記事
