第2章 脅威のモデル化 脅威モデリングへの一般化アプローチ
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
いつもと同じことをしていれば、いつもと同じものが手に入る。
ヘンリー・フォード
脅威のためにシステム設計を分析する演習としての脅威モデリングは、いくつかの基本的なステップに 一般化できる一貫したアプローチに従っている。本章ではまた、システムモデルから何を探すべきか、そして脅威モデリング の結果決して発見できないかもしれないことについての情報も提供する。
基本ステップ
このセクションでは、脅威モデリングの一般的な流れを示す基本的なステップを示す。経験豊富なモデラーは、これらのステップを並行して、しかもほとんどの部分は自動的に実行する。彼らは、モデルが形成される過程でシステムの状態を継続的に評価しており、モデルが期待される成熟度に達するかなり前に、懸念すべき領域を呼び出すことができるかもしれない。
そのレベルの快適さと慣れを得るには時間がかかるかもしれないが、練習すれば、これらのステップは自然に身につくだろう:
-
対象システムのオブジェクトを特定する。
モデル化するシステムに存在し、関連する要素、データストア、外部エンティティ、アクターを特定し、これらに関するメタデータとして特性や属性を収集する(この章の後半で、メタデータの収集を容易にするために使用できる質問例をいくつか示します)。各オブジェクトがサポートまたは提供するセキュリティ機能と制御、および、明らかな欠陥(HTTP で Web サーバを公開する要素や、アクセスに認証を必要としないデータベースなど)をメモしておく。
-
これらのオブジェクト間のフローを特定する。
ステップ1で説明したオブジェクト間でデータがどのように流れているかを特定する。次に、プロトコル、データの分類と感度、方向性など、それらのフローに関するメタデータを記録する。
-
関心のある資産を特定する。
ステップ 2 で特定されたオブジェクトによって保持される、あるいはフローによって通信される、関連 する、あるいは興味深いアセットを詳述する。アセットには、アプリケーションの内部データ(制御フラグや設定データなど)や、アプリケーションの機能に関連するデータ(ユーザデータなど)が含まれることを忘れないでください。
-
システムの弱点と脆弱性を特定する。
システムオブジェクトとフローの特性に基づいて、ステップ 3 で特定した資産の機密性、完全性、可用性、プライバシ ー、安全性がどのように影響を受ける可能性があるかを理解する。特に、「はじめに」で説明したセキュリティ原則に違反していないかどうかを調べる。例えば、ある資産にセキュリ ティトークンや鍵が含まれていて、ある条件付きでその鍵に不正にアクセスされる(その結果、機密性が損なわれる)可能性がある場合、あなたは弱点を特定したことになる。その弱点が悪用可能であれば、あなたは脅威にさらされる可能性のある脆弱性を持つことになる。
-
脅威を特定する。
システムの資産に対する脆弱性と脅威行為者を関連付け、それぞれの脆弱性が悪用される可能性を判断する必要がある。
-
悪用可能性を判断する。
最後に、攻撃者が1つまたは複数の資産に影響を与えるために取りうるシステム内のパスを特定する。言い換えれば、攻撃者がステップ4で特定した弱点をどのように悪用するかを特定する。
システムモデルに求められるもの
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access