
ペネトレーションテストとTLPTの違い
この記事では、昨今話題のTLPT(Threat-Led Penetration Testing)とペネトレーションテストの違いについて解説します。どちらもサイバーセキュリティの評価手法ですが、評価対象やアプローチが大きく異なります。かなり大雑把に説明すると、ペネトレーションテストは"物(システム)"を対象に評価することに対して、TLPTでは"人(組織)"を対象に評価する違いがあります。ここまでの説明で?(クエスションマーク)を思い浮かんだ方も多くいると思いますが、本記事を最後まで読んだ時に両者の違いを理解頂けると幸いです。
ペネトレーションテストとは?
ペネトレーションテストは、評価対象に選定された”システム(物)”に内在する脆弱性を、攻撃者視点で悪用可能かどうかを調査し、システムが侵害された際のリスクを可視化することを最終的に目的とした評価手法です(他、ペネトレーションテストの説明については弊社ブログをご参照下さい)。
MITRE ATT&CK
標的システムに対して攻撃者が行う一連の流れ(偵察 ~ 目的達成)を体系的にまとめたフレームワークに、MITRE ATT&CK(Adversarial Tactics, Techniques, and Common Knowledge)があります。MITRE ATT&CKでは、攻撃者が使用する戦術(Tactics)や技術(Techniques)を体系的に整理しており、攻撃の全体像を可視化することができます。
また、MITRE ATT&CKに記載された各技術の詳細を辿っていくと、実際の攻撃グループがどのようにその技術を用いたかという「手順(Procedures)」が記載されており、より具体的な攻撃の実態を把握することができます。これらの戦術・技術・手順を総称して、TTPs(Tactics, Techniques, and Procedures)と呼びます。
ペネトレーションテストにおいても、攻撃者の行動フローに沿って進行するため、MITRE ATT&CKに当てはめて整理することが可能です。大まかなペネトレーションテストのシナリオ(公開サーバ)の場合の流れは以下の通りです。
ステップ | 内容 | 技術/サブ技術(MITRE ID) |
情報収集 | 対象システムの情報収集 | T1592.002,T1596.005 etc. |
脆弱性スキャン | ソフトウェアやサービスの脆弱性を調査 | T1595.002 etc. |
攻撃の実行 | 脆弱性、設定不備を利用してシステムに侵入 | T1190, T1110 etc. |
権限昇格 | 権限の低いアカウントから管理者権限を取得 | T1068 etc. |
横展開 | 他のホストやシステムへの侵害拡大 | T1021 etc. |
また、ペネトレーションテストを実施する際には攻撃を模倣したパケットの送信やハッカーツールの使用して網羅的に攻撃を実行します。なお、本物の攻撃者と区別するために防御側にはあらかじめテスト実施の旨を周知します。
TLPT(Threat-Led Penetration Testing)とは?
画像:1614071166
TLPTでは、特定の攻撃者のTTPsを一気貫通(偵察 ~ 目的達成)して模倣することで、組織がそのTTPsに対して適切に検知・対応できるかを評価します。TLPTを実施する際、攻撃側をレッドチーム、防御側をブルーチームと呼びます。また、組織のセキュリティ成熟度にも依りますが、一般的にブルーチームにはテストの実施は事前に共有せずに行うことが多いです。その際にテスト全体を管理・調整する役割を担うのがホワイトチームと呼ばれ、ホワイトチームはレッドチームとブルーチームの双方と連携し、テストの目的や範囲の明確化、進行管理、終了判断、倫理的配慮(業務への影響最小化など)を行います。
攻撃者の特定
TLPTでは、特定の攻撃者を模倣するために攻撃者を指定する必要があります。この段階は「脅威インテリジェンス」と呼ばれ、過去に発生した侵害で使用されたマルウェアや侵害指標(Indicator of Compromise:IoC)などを活用して攻撃者を特定します。また、脅威インテリジェンスベンダを利用しない場合でも、CrowdStrikeが公開している脅威アクター一覧から「業界」,「事業規模」,「国」を選択することで、攻撃者を指定することが可能です。
TTPsの選定(MITRE ATT&CK)
攻撃者を特定した後は、模倣するTTPsを選定する必要があります。TTPsには、検知・検出が容易なものから高度で難易度の高いものまでさまざまなレベルが存在し、組織の成熟度に応じて適切なTTPを選ぶことが重要です。なお、攻撃者が過去に使用したTTPsについては、MITRE ATT&CKのグループを参照することで確認できます。
ペネトレーションテストの流れをMITER ATT&CKに沿って説明しましたが、ペネトレーションテストではシステムを対象にした戦術・技術を使用します。しかし、攻撃者が永続化(TA0003)や検知回避(TA0005)、フィッシング攻撃(T1566)といった戦術・技術を使用した場合、システムの脆弱性ではなく「人間の行動(従業員のセキュリティ意識や対応力)」や「組織の運用プロセス(運用やログ監視体制)」に大きく依存するため、これらを評価するにはペネトレーションテストよりもTLPTが適しています。なお、TLPTにおいてもシステムを対象にしたTTPsを使用しますが、ペネトレーションテストほどアグレッシブに実施をしないことが一般的です。
TLPT実施のメリット
模倣したTTPsを活用することで、サイバー攻撃に対する組織全体の対応能力を向上させることが可能です。
また、フォレンジック用語において「苦痛のピラミッド(Pyramid of Pain)」という用語があります。苦痛のピラミッドは、防御側の対応に対して下から上に遷移することにつれ、攻撃者が苦痛を伴うことを説明したモデルになっています。
TTPsはこのモデルの最上位に位置しており、TTPsが阻止されることが攻撃者にとって最も大きなダメージとなることがわかります。実際にインシデントが発生した際には、攻撃の根絶(完全排除)を目指して、攻撃者のTTPsを特定することが最も重要です。TLPTを実施することで、実際の攻撃者による被害が発生する前に、追加のセキュリティ製品の導入やログ監査設定の見直しなどの対策を講じることが可能となります。
ペネトレーションテストとTLPTの違い
ペネトレーションテストとTLPTの違いについて、以下に項目別で整理します。
項目 | ペネトレーションテスト | TLPT |
評価対象 | システム | 組織(人、プロセス、技術を含む) |
主な目的 | システムに内在する脆弱性を悪用可能か調査し、リスクを可視化 | 組織が実際の攻撃者のTTPsに対して検知・対応できるかを評価 |
テスト視点 | 脆弱性、設定不備を利用してシステムに侵入 ※網羅的に攻撃を実施 | 現実の攻撃者のTTPsを模倣し、検知・対応力を試す |
チーム構成 | テスト実施者 | レッドチーム(攻撃者役)、ブルーチーム(防御者)、ホワイトチーム(管理・調整) |
通知有無 | 事前に通知あり | 事前に通知なし ※通知ありでも実施可能 |
成果物 | 技術的な報告書 | 組織的な対応力評価、TTPsへの対応可否、改善提案 |
まとめ
MITRE ATT&CKを軸に分析することで、ペネトレーションテストとTLPTとで評価対象となる範囲や観点に差異があることを説明しました。
TLPTは綿密な計画と準備を要し、高度な専門性が求められることから、一般的にコストが高くなる傾向があります。また、すでに侵害されていることを前提に、組織内部からの起点で実施することも可能です。
TLPTは脅威の観点から組織全体を評価する手法であるため、まずは万全な組織体制を整えた上での実施が望まれます。たとえば、フィッシングへの対策が不十分な場合は、先にメール訓練やセキュリティ教育などの基礎的な対策に取り組むことが適切です。
実施にあたっては、費用感や自組織のセキュリティ成熟度について実施業者と相談し、コストパフォーマンスを最大限に高めた形での実施が望まれます。