ペネトレーション・テストは、セキュリティを評価するためにコンピュータ・システムで実行される、許可されたシミュレーション攻撃です。ペネトレーション・テスターは、システムの弱点がビジネスにもたらす影響を見つけて実証するために、攻撃者と同じツール、テクニック、プロセスを使用します。
ペネトレーション・テストでは、通常、ビジネスを脅かす可能性のあるさまざまな攻撃をシミュレーションします。ペネトレーション・テストでは、認証された状態と認証されていない状態、およびさまざまなシステム・ロールからの攻撃に対抗できるほどシステムが堅牢であるかどうかを確認できます。スコープが適切であれば、ペネトレーション・テストは評価する必要のあるシステムのあらゆる側面を深く掘り下げることができます。
危険なセキュリティ上の欠陥を排除するため、ソフトウェアやシステムを自社組織で一から設計することが理想です。ペネトレーション・テストは、その目的をどの程度達成できたかについての知見を提供します。ペネトレーション・テストは次のようなセキュリティ・アクティビティに対応します。詳しくはこちらをご覧ください。
ペネトレーション・テストの目的に応じて、組織は、ターゲット・システムに関するさまざまなレベルの情報やアクセスをテスターに提供します。場合によっては、ペネトレーション・テスト・チームが最初に設定した1つのアプローチに従います。また、ペネトレーション・テスト中のシステムに対する意識向上に伴って、テスト・チームが戦略を進化させていく場合もあります。業界では、以下の3種類のペネトレーション・テストが注目されています。
ペネトレーション・テスターは、意欲的な敵対者によって行われた攻撃をシミュレーションすることを目指しています。これを行うには、通常、以下のステップを含む計画を実行します。
ペネトレーション・テスト用の万能ソリューションはありません。ポート・スキャン、アプリケーション・スキャン、Wi-Fiへの侵入、ネットワークへの直接侵入に対して、さまざまなツールセットが必要になり、必要なツールはターゲットによって異なります。しかし、大まかに言えば、ペネトレーション・テスト・ツールの種類は次の5つに分類されます。
ペネトレーション・テストは、主に手動で行う作業です。ペネトレーション・テスターは、その過程で自動スキャンおよびテスト・ツールを使用します。しかしそれだけではなく、最新の攻撃技術の知識を用いて、脆弱性評価(自動テスト)よりも詳細なテストを行うために、セキュリティ障壁を乗り越える方法を考えます。手動ペネトレーション・テストと自動テストの利点を比較していくつか紹介します。
手動ペネトレーション・テスト
ペネトレーション・テストでは、一般的なリスト(OWASP Top 10など)に見つからない脆弱性と弱点を明らかにし、自動テストでは見落とされる可能性があるビジネス・ロジック(データ検証、整合性チェックなど)をテストします。また、手動によるペネトレーション・テストのレビューは、自動テストによって報告された誤検知の発見に役立ちます。総じて、手動ペネトレーション・テスターは敵対者のように「考える」専門家であり、スクリプト化されたルーチンに従った自動テスト・ソリューションでは不可能な方法で、攻撃を標的にしてデータを分析し、システムやWebサイトをテストすることができます。
自動テスト
自動テストは、完全な手動ペネトレーション・テスト・プロセスよりも迅速に結果が得られ、必要な専門技術者も少なく済みます。自動テスト・ツールでは、結果を自動的に追跡し、場合によっては一元管理されたレポート・プラットフォームに出力することができます。また、手動ペネトレーション・テストの結果はテストによって異なる場合がありますが、同じシステムで自動テストを繰り返し実行すると、同じ結果が得られます。
セキュリティ侵害の頻度と深刻さが年々増していく中、攻撃に耐える方法を可視化する必要性がこれまでになく高まっています。PCI DSSやHIPAAなどの規制では、要件を最新の状態に保つために定期的なペネトレーション・テストが義務付けられています。こうした圧力を念頭に置いて、このタイプの欠陥発見手法の長所と短所の一部を紹介します。
ペネトレーション・テストの長所
ペネトレーション・テストの短所