もし社内で運用しているシステムに問題(脆弱性)があると、さまざまな損害を招きかねません。たとえば「個人情報が漏えいする」「悪意あるハッカーが追加で攻撃を加える」「会社の評判が下がる」などの損害をまねくおそれがあります。
しかし、自力でシステムの問題を見つけるのは難しく、専門的な知識やスキルが必要です。そこで有効な調査手法が「ペネトレーションテスト(侵入テスト)」というフレームワークです。
この記事では、ペネトレーションテストの概要、やり方や具体的なツール、そして外部の専門家に依頼するポイントまで網羅的に解説します。テストを検討している場合は、ぜひ本記事の内容を参考にしてください。
目次
ペネトレーションテスト(侵入テスト)とは
ペネトレーションテスト、または侵入テスト(Penetration Testing、略して”ペンテスト”とも)とは、システム上の脆弱性を特定することを目的としたセキュリティテストの一つです。
このテストでは、悪意を持った攻撃者を想定し、ネットワークを通じてシステムに侵入(ハッキング)できるかを確認します。これは実際の攻撃と同じ方法でハッキングを試みるため、一般的には専門家が提供するサービスを使って行われることが多いです。
よく似た概念として「脆弱性診断」がありますが、こちらはシステムの脆弱性を検出することを目的としています。一方、ペネトレーションテストはシステムに侵入できるかどうかを検証することが目的で、調査の対象もシステム全体となっています。
ペネトレーションテスト(侵入テスト)のやり方
ペネトレーションテスト(侵入テスト)は、以下の手順で実施されます。
- テストの目的と範囲を定義する
- システムの脆弱性を調査する
- 脆弱性を利用してシステムに侵入する
- 侵入後のシステムの挙動を調査する
- テスト結果を報告する
①テストの目的と範囲を定義する
ペネトレーションテスト(侵入テスト)を行う前に、テストの目的を明確にすることで、テストの実施方法やテスト結果の評価方法を決定することができます。
具体的な例としては、以下のようなものが挙げられます。
- システムの脆弱性を検証するために、外部からの侵入を想定したテストを実施する。
- システムのセキュリティ上のリスクを可視化するために、内部からの侵入も含めたテストを実施する。
- サイバー攻撃による被害を防止するために、システムの脆弱性を悪用した攻撃を想定したテストを実施する。
テストの目的を定義する場合、システムの重要度やセキュリティ対策の現状などを考慮して、適切な目的を定めることが重要です。
次にテストの対象となるシステムの範囲を明確にします。システム全体、特定のアプリケーションやサービス、特定の機能など、テストする範囲を決定します。
②システムの脆弱性を調査する
次に、既知の脆弱性情報や、テスト対象システムの構成や設定を調査して、脆弱性を洗い出します。脆弱性の情報は、脆弱性データベースや脆弱性スキャナーなどから入手することができます。
脆弱性データベースとは
脆弱性データベースとは、既知の脆弱性情報を収集・管理しているデータベースです。脆弱性データベースには、脆弱性の種類や影響、対処方法などの情報が記載されています。
脆弱性データベースには、以下のようなものが挙げられます。
- JVN iPedia(独立行政法人情報処理推進機構)
- NVD(National Vulnerability Database)(米国国立標準技術研究所)
- CVE(Common Vulnerabilities and Exposures)(MITRE Corporation)
脆弱性スキャナー
脆弱性スキャナーとは、システムの脆弱性を自動的に検出するツールです。脆弱性スキャナーは、脆弱性データベースに登録されている脆弱性情報をもとに、システムをスキャンして脆弱性を検出します。
脆弱性スキャナーには、以下のようなものが挙げられます。
- Nessus(Tenable Network Security)
- Nmap(Nmap Project)
- OpenVAS(OpenVAS Project)
③脆弱性を利用してシステムに侵入する
次に脆弱性を利用してシステムに侵入する際には、ホワイトハッカーと呼ばれるセキュリティ専門家が、実際の攻撃者と同じような手法を用いて侵入を試みます。侵入の手法としては、辞書攻撃や総当たり攻撃(ブルートフォースアタック)などのパスワード推測、脆弱性を利用した攻撃などが挙げられます。
④侵入後のシステムの挙動を調査する
侵入後のシステムの挙動を調査することで、侵入者がどのような被害を及ぼすことができるかを把握することができます。侵入後の挙動の調査では、システムのファイルやログの調査、システムの動作の確認などが行われます。
⑤テスト結果を報告する
テスト結果は、テスト対象システムの改善に役立てるために、レポート形式で報告することが推奨されています。レポートには、テストの目的、テストの範囲、脆弱性のリスト、侵入の可否、侵入後の挙動などの情報が記載されます。
ペネトレーションテストは、システムのセキュリティを評価する上で重要なテスト手法ですが、より精度の高いテスト結果を得る場合、専門的な知識とスキルを持った外部の専門家に依頼するのが賢明です。なぜなら攻撃者の視点に立って、システムの脆弱性を悪用して侵入を試みる性質上、攻撃者の手法や技術を熟知した専門家が行う必要があるからです。
もちろん、自社内に専門的な知識とスキルを持った人材がいる場合、自社でペネトレーションテストを実施することも可能ですが、その場合でも外部の専門家に相談するなどし、テストの実施方法やテスト結果の評価方法を検討することが重要となってきます。
ペネトレーションテスト(侵入テスト)の主なツール
ペネトレーションテスト(侵入テスト)の主なツールは、以下のとおりです。
- 脆弱性スキャナー:システムの脆弱性を自動的に検出するツール
- ネットワークスキャナー:ネットワーク上のホストやポートをスキャンして情報を収集するツール
- パスワードクラッカー:辞書攻撃やブルートフォース攻撃などの手法を用いて、パスワードを解読するツール
- Webアプリケーションスキャナー:Webアプリケーションの脆弱性データベースに登録されている脆弱性情報をもとに、Webアプリケーションをスキャンして脆弱性を検出するツール
- レッドチームツール:攻撃者の手法や技術を模擬するツール
これらのツールは、単独で使用することもできますが、組み合わせて使用することで、より効果的なペネトレーションテストを実施することができます。
具体的には、以下の組み合わせがよく用いられます。
- 脆弱性スキャナーとネットワークスキャナーを組み合わせて、システムの脆弱性を網羅的に検出する。
- パスワードクラッカーとWebアプリケーションスキャナーを組み合わせて、Webアプリケーションの脆弱性をより深く調査する。
- レッドチームツールとその他のツールを組み合わせて、攻撃者の視点に立ったテストを実施する。
また、ペネトレーションテストの目的やテスト対象システムの重要度に合わせて、適切なツールを選択することが重要です。
ただし、これらのツールを操作するには高度な技術力が必要であり、誤った操作はシステムに悪影響を与える可能性があります。したがって、ペネトレーションテストは専門家に依頼することが推奨されます。経験豊富な専門家に依頼することで、適切かつ効率的な方法でテストを実施することができます。
ペネトレーションテスト(侵入テスト)の主な種類
ペネトレーションテスト(侵入テスト)の主な種類は次のとおりです。
- 外部ペネトレーションテスト
- 内部ペネトレーションテスト
もちろん、外部ペネトレーションテストと内部ペネトレーションテストを組み合わせたテストも実施可能です。これにより、外部からの攻撃だけでなく、内部からの攻撃も検出することができます。
また、テストの目的やテスト対象システムの重要度に合わせて、適切なテストの種類を選択することが重要です。
外部ペネトレーションテスト
外部ペネトレーションテストは、インターネットなどの外部ネットワークからシステムに侵入を試みるテストです。攻撃者が外部からシステムに侵入する可能性を検証するテストです。
外部ペネトレーションテストでは、以下の手法がよく用いられます。
- 脆弱性スキャン
- ネットワークスキャン
- パスワードクラッキング
- Webアプリケーションスキャン
外部ペネトレーションテストは、システムのセキュリティを向上させるための基本的なテストです。定期的に実施することで、システムのセキュリティ上のリスクを可視化することができます。
内部ペネトレーションテスト
内部ペネトレーションテストは、すでにシステムに侵入している攻撃者を想定して、システムの内部から侵入を試みるテストです。攻撃者が内部からシステムに侵入して被害を及ぼす可能性を検証するテストです。
内部ペネトレーションテストでは、以下の手法がよく用いられます。
- ソーシャルエンジニアリング
- ファイル共有
- アプリケーションの脆弱性
- 内部者の不正アクセス
内部ペネトレーションテストは、外部ペネトレーションテストだけでは検出できない脆弱性を発見することができます。また、内部からの攻撃の可能性を検証することで、システムのセキュリティを向上させるための対策を講じることができます。
ペネトレーションテスト(侵入テスト)の主な手法
ペネトレーションテスト(侵入テスト)の主な手法は次のとおりです。
- ホワイトボックステスト
- ブラックボックステスト
- グレーボックステスト
- ソーシャルエンジニアリング
ホワイトボックステスト
ホワイトボックステストとは、テスト対象となるシステムの内部構造や設計情報などの情報を「すべて」知った上で実施するテストであり、攻撃者がシステムの内部構造や設計情報をすべて把握している状況を想定したテストです。
ホワイトボックステストでは、以下の手法がよく用いられます。
- 脆弱性スキャン
- アプリケーションのソースコードの解析
- システムの内部構造の調査
ホワイトボックステストは、システムの脆弱性を網羅的に検出することができます。また、システムの内部構造や設計情報を把握することで、攻撃者がどのようにシステムに侵入する可能性があるかをより深く理解することができます。
ブラックボックステスト
ブラックボックステストとは、テスト対象となるシステムの内部構造や設計情報などの情報を「一切」知らない前提で実施するテストです。攻撃者がシステムの内部構造や設計情報をまったく把握していない状況を想定したテストです。
ブラックボックステストでは、以下の手法がよく用いられます。
- 脆弱性スキャン
- ネットワークスキャン
- パスワードクラッキング
- Webアプリケーションスキャン
ブラックボックステストは、攻撃者がシステムに侵入する可能性をより現実的に検証することができます。また、システムの脆弱性を発見することで、攻撃者がどのようにシステムに侵入する可能性があるかをより実践的に理解することができます。
グレーボックステスト
グレーボックステストとは、テスト対象システムの一部の情報のみを把握して実施するテストです。攻撃者がシステムの一部の情報のみを把握している状況を想定したテストです。
グレーボックステストでは、以下の手法がよく用いられます。
- 脆弱性スキャン
- ネットワークスキャン
- パスワードクラッキング
- Webアプリケーションスキャン
- システムの内部構造の調査
グレーボックステストとは、ホワイトボックステストとブラックボックステストのメリットを組み合わせたテストです。このテストでは、システムの脆弱性を網羅的に検出しながら、攻撃者がシステムに侵入する可能性をより現実的に検証することができます。
ソーシャルエンジニアリング
ソーシャルエンジニアリングとは、人間の心理や行動を巧みに利用して、情報を収集したり、システムに侵入したりする攻撃手法であり、以下の手法がよく用いられます。
- フィッシングメール
- なりすまし
- 人質攻撃
ソーシャルエンジニアリングは、脆弱性スキャンやネットワークスキャンなどの技術的なテストでは検出できない脆弱性を発見することができます。また、攻撃者がどのように人間を騙してシステムに侵入する可能性があるかを理解することができます。
ペネトレーションテスト(侵入テスト)を使用するケース
ペネトレーションテスト(侵入テスト)を使用するケースは次のとおりです。
- Webアプリケーションのセキュリティ評価
- ネットワークインフラのセキュリティスキャン
- 社内ネットワークへの不正アクセス試験
- ワイヤレスネットワークの脆弱性診断
- ソーシャルエンジニアリングのテスト
Webアプリケーションのセキュリティ評価
Webアプリケーションの脆弱性の有無は、脆弱性スキャンやアプリケーションのソースコードの解析などによって判断します。脆弱性が見つかった場合は、その脆弱性が悪用された場合にどのような影響があるのか、具体的に検証します。
たとえば、Webアプリケーションの脆弱性としてよく知られている「SQLインジェクション」の脆弱性があるとします。SQLインジェクションとは、Webアプリケーションの入力フォームにSQL文を埋め込んで、アプリケーションのデータベースに不正アクセスする攻撃手法です。
この脆弱性が悪用された場合、攻撃者はアプリケーションのデータベースから情報を盗み取ったり、データを改ざんしたり、アプリケーションを停止させたりする可能性があるため、脆弱性が悪用された場合にどのような影響があるのか、具体的に検証する必要があります。
ネットワークインフラのセキュリティスキャン
ネットワークインフラは、サイバー攻撃の入り口となるため、定期的にペネトレーションテストを実施してセキュリティを評価することが重要です。ペネトレーションテストでは、ネットワークスキャンや脆弱性スキャンなどによって、ネットワークインフラの脆弱性を検出します。
社内ネットワークへの不正アクセス試験
社内ネットワークは、機密情報や顧客情報などの重要なデータが保管されているため、定期的にペネトレーションテストを実施してセキュリティを評価することが重要です。ペネトレーションテストでは、脆弱性スキャンやネットワークスキャン、ソーシャルエンジニアリングなどによって、社内ネットワークへの侵入を試みる攻撃者の可能性を検証します。
ワイヤレスネットワークの脆弱性診断
ワイヤレスネットワークは、有線ネットワークに比べてセキュリティが脆弱であるため、定期的にペネトレーションテストを実施してセキュリティを評価することが重要です。ペネトレーションテストでは、脆弱性スキャンやパスワードクラッキングなどによって、ワイヤレスネットワークの脆弱性を検出します。
ソーシャルエンジニアリングのテスト
ソーシャルエンジニアリングとは、人間の心理や行動を巧みに利用して、情報を収集したり、システムに侵入したりする攻撃手法です。具体的には、以下の手法が用いられます。
- フィッシングメール
- なりすまし
- 人質攻撃
このように、脆弱性スキャンやネットワークスキャンなどの技術的なテストでは検出できない脆弱性を発見することができます。また、攻撃者がどのように人間を騙してシステムに侵入する可能性があるかを理解することができます。
ペネトレーションテストのレポートには何が記載されるのか
ペネトレーションテストのレポートには、以下の3つの項目が記載されます。
- テストの概要
- テスト結果
- 対策
テストの概要
テストの概要には、実施されたペネトレーションテストの概要が簡潔にまとめられます。具体的にはテスト期間、テスト対象のシステムやネットワーク、使用されたツールや手法の概要が含まれます。
テスト結果
テスト結果には、発見された脆弱性の深刻度や影響度合い、攻撃者がアクセスできる情報などが明示され、実際の脅威に対する理解を提供します。これにより、組織は対策を優先的に適用し、最も深刻な脅威に対処できるようになります。
対策
ここでは、特定された脆弱性に対する具体的な対策が提案されます。これには、ベンダーから提供されるセキュリティパッチの適用方法、システム構成の変更、不要なサービスやポートの無効化などが含まれます。
また、脆弱性が悪用された際に発生する可能性のある被害を軽減する方法として、侵入検知システムの導入・アクセス制御の強化・データの暗号化などの対策が提供され、攻撃者がシステム内に侵入した場合でも被害を最小限に抑えるための手段を講じることができます。
ペネトレーションテスト(侵入テスト)で期待できる効果
ペネトレーションテスト(侵入テスト)で期待できる効果を取りまめると次のとおりです。
- 攻撃者の侵入経路や手法の特定
- 脆弱性の深刻度や影響範囲の把握
- 対策の優先順位の決定
- セキュリティ対策の有効性の検証
攻撃者の侵入経路や手法の特定
ペネトレーションテストでは、システムに対する攻撃者の侵入経路や使用される手法を特定する上で効果的です。
たとえば悪意を持った第三者がどのようにしてシステムにアクセスし、侵入する可能性があるかを明確に把握することで、組織はより的確なセキュリティ対策を講じることができます。
脆弱性の深刻度や影響範囲の把握
また、システム内の脆弱性の深刻度やそれが引き起こす可能性のある影響範囲を正確に評価できます。これにより、組織は脆弱性の修復や軽減において優先順位をつけ、限られたリソースを最も効果的に活用することができます。
対策の優先順位の決定
深刻な脆弱性や攻撃経路に対しては、迅速で効果的な対応が求められますが、ペネトレーションテストでは、特定された脆弱性に対する対策の優先順位を明確にするのに役立ちます。これにより、組織はセキュリティリスクを最小限に抑えることができます。
セキュリティ対策の有効性の検証
ペネトレーションテストは、既存のセキュリティ対策が実際の攻撃に対してどれだけ効果的であるかを検証するための手段です。これにより、組織はセキュリティポストチャーを向上させ、未然にセキュリティインシデントを防ぐことができます。
ペネトレーションテストでおすすめの専門会社
ペネトレーションテストはまだまだ一般的に馴染みが薄く、どのような判断基準で依頼先を選定すればよいか分からない方も多いと思います。そこで、30社以上の会社から以下のポイントで厳選した編集部おすすめの調査会社を紹介します。
信頼できるペネトレーションテスト専門会社を選ぶポイント
- 官公庁・捜査機関・大手法人の依頼実績がある
- 緊急時のスピード対応が可能
- セキュリティ体制が整っている
- 法的証拠となる調査報告書を発行できる
- データ復旧作業に対応している
- 費用形態が明確である
上記のポイントから厳選したおすすめのペネトレーションテストができる専門会社は、デジタルデータフォレンジックです。
デジタルデータフォレンジック
公式サイトデジタルデータフォレンジック
デジタルデータフォレンジックは、累計3万9千件以上の豊富な相談実績を持ち、全国各地の警察・捜査機関からの相談実績も395件以上ある国内有数のフォレンジック調査サービスです。一般的なフォレンジック調査会社と比較して対応範囲も幅広く、インシデントレスポンスの実績も豊富です。これは、サイバー攻撃の現場を多く見ていることを意味し、様々なニーズに柔軟かつ効果的に対応可能なサービスの提供につながっています。
また24時間365日の相談窓口があり、最短30分で無料のWeb打合せ可能とスピーディーに対応してくれるので、緊急時でも安心です。相談から見積りまで無料で対応してくれるので、依頼が初めて、費用面で心配という方もまずはお気軽に相談してみることをおすすめします。
費用 | ★相談・見積り無料 まずはご相談をおすすめします |
---|---|
調査対象 | デジタル機器全般:PC/スマートフォン/サーバ/外付けHDD/USBメモリ/SDカード/タブレット 等 |
サービス | ●セキュリティ診断・その他のサービス: パスワード解除、デジタル遺品調査、セキュリティ診断、脆弱性診断、ペネトレーションテスト(侵入テスト)、OSINT調査(ダークウェブ調査) 等 ※法人・個人問わず対応可能 ●サイバーインシデント調査: マルウェア・ランサムウェア感染調査、サイバー攻撃調査、情報漏洩調査、ハッキング調査、不正アクセス(Webサイト改ざん)調査、サポート詐欺被害調査、Emotet感染調査 ●社内不正調査: 退職者の不正調査、情報持ち出し調査、横領・着服調査、労働問題調査、文書・データ改ざん調査、証拠データ復元 |
特長 | ✔官公庁・法人・捜査機関への協力を含む、累計39,000件以上の相談実績 ✔企業で発生しうるサイバーインシデント・人的インシデントの両方に対応 ✔国際標準規格ISO27001/Pマークを取得した万全なセキュリティ体制 ✔経済産業省策定の情報セキュリティサービス基準適合サービスリストに掲載 ✔警視庁からの表彰など豊富な実績 ✔14年連続国内売上No.1のデータ復旧サービス(※)を保有する企業が調査 ※第三者機関による、データ復旧サービスでの売上の調査結果に基づく。(2007年~2020年) |
基本情報 | 運営会社:デジタルデータソリューション株式会社 所在地:東京都港区六本木6丁目10-1 六本木ヒルズ森タワー15階 |
受付時間 | 24時間365日 年中無休で営業(土日・祝日も対応可) ★最短30分でWeb打合せ(無料) |
まとめ
今回は、ペネトレーションテストについてご紹介しました。セキュリティを強化し、システムやデータを保護するためにも、定期的なペネトレーションテストが重要です。脆弱性やセキュリティのリスクを早期に発見し、適切な対策を講じることで、未然にセキュリティインシデントを回避できます。
なお、セキュリティに関する専門的な操作や複雑な対策に不安を感じる場合、または解決が難しい場合は、専門会社に相談されることをおすすめします。専門家のアドバイスやサポートを得ることで、より効果的かつ安全なセキュリティ対策を実現できます。安心してオンライン環境を活用するためにも、セキュリティに対する意識と対策をしっかりと行いましょう。