ペンテストフレームワーク、つまりペネトレーションテストフレームワークとは、さまざまなネットワークやセキュリティ環境で効果的なペンテストを計画・実施するための、標準化されたガイドラインと推奨ツールのセットです。
組織固有のセキュリティ要件やコンプライアンス要件を満たす独自のペンテストフレームワークを構築することも可能ですが、既存の方法論やフレームワークを土台にすれば、作業を容易にできます。実際、ペンテストを計画どおり進めるには、包括的で専門家によるレビューを経た既存のソリューションを使うほうが、一般的に効果的です。
ペンテストフレームワークの使い方や構成方法、そして現在利用できる主要なペンテストフレームワークについて詳しく見ていきましょう。
この記事の内容:
ペンテストフレームワークの仕組み
簡単に言えば、ペンテストフレームワークは、実施するペネトレーションテストの種類や予定しているテストの範囲に応じて、ペンテスターが適切なツールと方法論を選べるよう導くものです。ペンテスターはペネトレーションテストと倫理的ハッキングのプロセスを開始したら、テスト中に評価すべき戦術カテゴリを確認するため、ペンテストフレームワークを参照します。
ペンテストが完了した後も、ペンテスターはフレームワークを使って調査結果をさらに評価し、報告します。特に、主要な戦術カテゴリとの関係を明確にするうえで有用です。また、環境をペンテスト前の設定に戻すことも重要です。
一般的なペンテストフレームワークの手順
ペンテストフレームワークは、使用するフレームワークによって細部が異なりますが、ほとんどは同様の手順に従います。これにより、組織はペンテストプログラムを効率的かつ包括的に進められます。
ペンテストフレームワークに含まれる一般的な手順は次のとおりです。
- 初期計画と準備:フレームワークでは、誰がペンテスターになるのか、どのペンテストフレームワークと方法論に従うのか、テストと報告結果に関する期待事項、法的要件やコンプライアンス要件、テストを成功させるために必要なツールやリソースを組織が決定するよう指示します。
- インテリジェンスと情報の収集:ペンテストフレームワークの策定・選定プロセスの初期に収集すべき情報には、資産所有範囲、ネットワークの対象、エクスプロイト、関係する第三者、ネットワークポート、IPアドレス、関係する従業員の氏名、施設の所在地などが含まれます。この段階は、ディスカバリー、テスト、スキャン、評価の段階と呼ばれることもあります。
- 攻撃フェーズ:ペンテスターは攻撃を開始し、フレームワークで事前定義された戦術カテゴリに対してシステムがどのように機能するかを評価します。
- 攻撃後のフェーズ:ペンテスターまたはサイバーセキュリティ専門家のチームが、テスト環境の資産や機能を元の状態に戻します。
- 結果の報告:ペンテストフレームワークを使い、使用したツールや戦術カテゴリのパフォーマンスなどに基づいて結果を整理します。
関連記事:ペネトレーションテストプログラムを10の手順で実装する方法
ペンテストフレームワークの10のカテゴリ
一般的なペンテストフレームワークでは、ペンテスターがペネトレーションテスト中にサイバーセキュリティのパフォーマンスを多方面から評価するために使う戦術カテゴリを明確に定めています。フレームワークごとに戦術カテゴリの用語やアプローチは異なりますが、ペンテストフレームワークで頻繁に見られるカテゴリには次のようなものがあります。
- 収集:倫理的ハッカーとして、攻撃中にどのような情報やセキュリティインテリジェンスを収集できますか。その情報は、今後の攻撃経路や計画にどれほど役立つでしょうか。
- コマンド&コントロール:模擬攻撃中、企業ネットワークのサーバーやアプリにどのようなバックドアや covertな通信手段を構築できますか。これらのバックドアは容易に検知されますか。サイバーセキュリティツールがリスク軽減に介入した後も開いたままになりますか。
- 認証情報/情報へのアクセス:どのツール、ユーザー、ハードウェアが、どのような情報にアクセスできますか。どのような認証情報とアクセス制御が設定されており、模擬攻撃中に不正なユーザーアクセスを阻止する効果はどの程度ありますか。
- 防御回避の能力と戦略:サイバーセキュリティインフラは脅威の検知にどのように対処し、攻撃者の防御回避戦略にどう対応しますか。さまざまな脅威をどの程度効果的に特定・回避でき、初期防御線だけでは不十分な場合、どれほど迅速に対応を切り替えられますか。
- 探索と情報収集:模擬攻撃の開始後、サイバーセキュリティ環境は関連するセキュリティインシデント情報をどれだけ迅速かつ包括的に収集し、精査できますか。
- 実行:ネットワーク上の不正なユーザーやその他の不審な活動に対処する際、サイバーセキュリティツールはどのように反応しますか。どのツールが作動し、対応に要する時間はどの程度で、ツールとセキュリティ専門家のどちらが何を軽減しますか。さらに、サイバーセキュリティインフラはリモートコード実行のような攻撃種別にどう対応しますか。
- 情報の持ち出し:ネットワークのどの部分からでもデータを盗み出せますか。可能な場合、アクセスできるデータの種類や量、そしてデータ持ち出しに対してどの程度の防御が働きますか。
- ラテラルムーブメント:模擬攻撃中、最初のアクセス地点から別のアプリ、データベース、ネットワークコンポーネントへ容易に移動できますか。連携したアプリ間の横移動と、別のセグメントや部門にあるネットワーク部分への横移動では、どちらが難しいでしょうか。
- 永続化:サイバーセキュリティツールが攻撃に対応した後も、どのような設定ミス、バックドア、インプラント、その他の攻撃コンポーネントが残りますか。これらの機能はどの程度の期間、気付かれにくい攻撃を継続して展開できますか。
- 権限昇格:攻撃者は自分の認証情報を変更したり、別のユーザーの認証情報を盗んだりして、ネットワークや特定のアプリケーションにおけるアクセスレベルとユーザー権限を高められますか。内部の悪意ある行為者と外部の悪意ある行為者では、権限昇格の難しさはどのように異なりますか。
ペネトレーションテストフレームワークの使い方
一般に、ペネトレーションテストフレームワークは、ペンテストをより包括的かつ効果的にするために使われます。ただし、ペンテストにはさまざまな目的があり、ペンテストフレームワークにも複数の用途があります。ペネトレーションテストフレームワークの代表的な使い方は次のとおりです。
- 脆弱性の評価と管理を行う
- 攻撃型サイバーセキュリティの改善に向けた倫理的ハッキング
- 防御型サイバーセキュリティの評価
- ディスカバリー、プロービング、偵察
- 列挙と情報収集
- サイバーセキュリティとコンプライアンスの監査
主要なペンテストフレームワーク7選を解説
以下では、広く使われているペンテストフレームワークと方法論を、図表と詳しい解説で紹介します。ここに挙げるフレームワークの多くは、たとえばOpen Source Security Testing Methodology Manual(OSSTMM)のように、当初は単純なペンテストフレームワークとして始まり、その後、別のペンテストフレームワークの基盤となる方法論へと発展した点に注意してください。
| ペンテストフレームワーク | 提供元 | 重点領域と主な特徴 |
|---|---|---|
| Cobalt Strike | Fortra |
|
| Metasploit Framework Metasploit Pro | Rapid7 |
|
| NIST Cybersecurity Framework(CSF) | National Institute of Standards and Technology(NIST) |
|
| Open Source Security Testing Methodology Manual(OSSTMM) | Institute for Security and Open Methodologies(ISECOME) |
|
| Penetration Testing Execution Standard(PTES) | さまざまな組織の情報セキュリティ専門家による集合体 |
|
| OWASP Continuous Penetration Testing Framework | Open Web Application Security Project(OWASP) |
|
| PenTesters Framework(PTF) | TrustedSec |
|
Cobalt Strike
Cobalt Strikeは、ペンテストで最も広く使われているフレームワークの一つである、レッドチーム向けのコマンドおよびオペレーションフレームワークです。このツールには攻撃者シミュレーション、インシデント対応のガイダンス、ソーシャルエンジニアリングの機能などが含まれます。ユーザーはCommunity Kitリポジトリを使ってCobalt Strikeを特定のニーズに合わせて変更でき、Fortraが提供するペンテストソフトウェアのCore Impactと組み合わせて使うことで、機能をさらに拡張することもできます。
関連記事:Cobalt Strikeがハッカーのお気に入りツールになった理由
Metasploit
Metasploitは、Rapid7とオープンソースコミュニティが共同で設計したペネトレーションテストフレームワークです。主な機能として、1,500件のエクスプロイト、ネットワーク探索、ネットワークセグメンテーションのテストなどのタスクに対応するMetaModules、自動テスト、ベースライン監査とレポート、手動エクスプロイトおよび認証情報のブルートフォース攻撃のオプションなどがあります。ユーザーは、無料のオープンソース版Metasploitと、追加機能を備えたMetasploit Proのいずれかを選択できます。
関連記事:Metasploit Framework入門:ペンテストチュートリアル
NIST Cybersecurity Framework
NISTのCybersecurity Framework(CSF)は、あらゆる種類のサイバーセキュリティリスクに関する標準、ベストプラクティス、ガイドラインに焦点を当てた、やや広範なフレームワークです。このフレームワークが重視する5つの機能は、特定、保護、検知、対応、復旧です。より広範なフレームワークであり、米国商務省が策定したものでもあるため、この標準化されたフレームワークは、さまざまなサイバーセキュリティテストやコンプライアンス監査のガイドラインとして利用できます。
Open Source Security Testing Methodology Manual(OSSTMM)
Institute for Security and Open Methodologies(ISECOME)のOSSTMMフレームワークは、基本的なフレームワークの機能を超え、セキュリティテストと分析のための完全な方法論へと発展しています。詳細なガイドではさまざまなテーマを扱っており、Open Source Security Testing Methodology Manualは、セキュリティテストの定義とスコープ設定、エンゲージメントルール、エラー処理、結果の開示方法に関する情報をユーザーに提供します。
Penetration Testing Execution Standard(PTES)
Penetration Testing Execution Standard、略してPTESは、完全な方法論へと発展したもう一つのペンテストフレームワークです。主なセクションでは、ペネトレーションテストに関するコミュニケーションと根拠、インテリジェンス収集、脅威モデリング、脆弱性調査、エクスプロイトと侵害後の活動、レポート作成を扱います。公式PTESのガイドラインでは、ペンテストの実施方法については説明していません。この領域について指導・支援するため、チームは技術ガイドライン文書を作成しています。PTESの第2版となる更新版は現在作成中です。
Open Web Application Security Project(OWASP)
OWASPのContinuous Penetration Testing Frameworkは、情報セキュリティおよびアプリケーションセキュリティのペネトレーションテストに関する標準、ガイドライン、ツールに焦点を当てた、現在開発中のフレームワークです。OWASPは、このフレームワークのリリース時期や機能について詳しく知りたいユーザーに、透明性の高いロードマップを提供しています。
PenTesters Framework(PTF)
TrustedSecのPenTesters Framework(PTF)は、Penetration Testing Execution Standardを大きく基盤としています。インストールとパッケージ化をより効率化するよう設計されており、高度にカスタマイズおよび設定できるとされています。ユーザーは、Linuxコマンドを使ってPTFをダウンロードすることも、Gitから直接ダウンロードすることもできます。
関連記事:
まとめ:ペンテストフレームワーク
プロセス、使用するツール、標的とする戦術領域を体系化するためにペンテストフレームワークを活用しなければ、ペネトレーションテストの取り組みは十分な成果を上げられません。組織とその攻撃対象領域が拡大する中では特に、ペンテストの手順を再現可能かつスケーラブルにすることが重要です。ペンテストフレームワークを使えば、ペンテストにおける推測に頼る必要がなくなり、テストと調査を成功させながら、他の脆弱性管理の改善に注力できます。
さらに読む:





