ペネトレーションテスト-方法
ペネトレーションテストは、システムのさまざまな問題を考慮し、テスト、分析、および解決策を提供する手法の組み合わせです。これは、侵入テストを段階的に実行する構造化された手順に基づいています。
この章では、侵入テスト方法のさまざまなステップまたはフェーズについて説明します。
ペネトレーションテスト方法のステップ
以下は侵入テストの7つのステップです-
計画と準備
計画と準備は、侵入テストの目標と目的を定義することから始まります。
クライアントとテスターは共同で目標を定義し、両者が同じ目的と理解を持つようにします。ペネトレーションテストの一般的な目的は次のとおりです。
- 脆弱性を特定し、技術システムのセキュリティを向上させるため。
- ITセキュリティを外部のサードパーティに確認してもらいます。
- 組織/人事インフラストラクチャのセキュリティを強化します。
偵察
偵察には、予備情報の分析が含まれます。多くの場合、テスターは予備情報以外の多くの情報、つまりIPアドレスまたはIPアドレスブロックを持っていません。テスターは、利用可能な情報を分析することから始め、必要に応じて、システムの説明、ネットワーク計画などの詳細情報をクライアントに要求します。このステップは、一種のパッシブ侵入テストです。唯一の目的は、システムの完全で詳細な情報を取得することです。
発見
このステップでは、侵入テスターが自動化されたツールを使用して、脆弱性を発見するためにターゲット資産をスキャンする可能性があります。これらのツールには通常、最新の脆弱性の詳細を提供する独自のデータベースがあります。しかし、テスターは発見します
Network Discovery −追加のシステム、サーバー、およびその他のデバイスの検出など。
Host Discovery −これらのデバイスで開いているポートを判別します。
Service Interrogation −ポートに問い合わせて、ポートで実行されている実際のサービスを検出します。
情報とリスクの分析
このステップでは、テスターは、システムに動的に侵入するためのテストステップの前に収集された情報を分析および評価します。システムの数が多く、インフラストラクチャのサイズが大きいため、非常に時間がかかります。テスターは分析中に次の要素を考慮します-
侵入テストの定義された目標。
システムへの潜在的なリスク。
後続のアクティブな侵入テストのために潜在的なセキュリティ上の欠陥を評価するために必要な推定時間。
ただし、識別されたシステムのリストから、テスターは潜在的な脆弱性を含むシステムのみをテストすることを選択できます。
アクティブな侵入の試み
これは、十分な注意を払って実行する必要がある最も重要なステップです。このステップでは、実際のリスクを抱えている発見ステップで特定された潜在的な脆弱性の程度が伴います。この手順は、潜在的な脆弱性の検証が必要な場合に実行する必要があります。整合性要件が非常に高いシステムの場合、重要なクリーンアップ手順を実行する前に、潜在的な脆弱性とリスクを慎重に検討する必要があります。
最終分析
このステップでは、主に、それまでに実行されたすべてのステップ(上記で説明)と、潜在的なリスクの形で存在する脆弱性の評価を検討します。さらに、テスターは脆弱性とリスクを排除することをお勧めします。とりわけ、テスターは、テストの透明性とそれが開示した脆弱性を保証する必要があります。
レポートの準備
レポートの準備は、全体的なテスト手順から開始し、次に脆弱性とリスクの分析を行う必要があります。高いリスクと重大な脆弱性には優先順位があり、次に低い順序が続く必要があります。
ただし、最終報告書を文書化する際には、以下の点を考慮する必要があります。
- ペネトレーションテストの全体的な概要。
- 各ステップの詳細と、侵入テスト中に収集された情報。
- 発見されたすべての脆弱性とリスクの詳細。
- システムのクリーニングと修正の詳細。
- 将来のセキュリティに関する提案。