ページの本文へ

セキュリティ

ペネトレーションテストについてぜい弱性診断との違いも含めて詳しく解説

ペネトレーションテストは、自社のシステムのセキュリティ強度を確認する有効な手段として知られています。簡単にいえば、このテストはサイバー攻撃についての知識やスキルを持つ技術者が実際にシステムに対する模擬攻撃を行い、その結果を調べるというものです。ペネトレーションテストの内容や一般的なぜい弱性診断との違い、メリット・デメリットなどについて解説します。

  1. ペネトレーションテストとは
  2. ペネトレーションテストのメリット
  3. ペネトレーションテストのデメリット
  4. ペネトレーションテストとぜい弱性診断の違い
  5. ペネトレーションテストの種類
  6. ペネトレーションテストの手法
  7. ペネトレーションテストの実施方法

ペネトレーションテストとは

ペネトレーションテストとは、企業や組織が利用している(もしくは構築したばかりの)コンピューターシステムに対し、外部からの悪意のある攻撃者がよく用いる方法や技術による侵入を試みて、システムにセキュリティ上のぜい弱性がないかをチェックする手法を指します。

テストのための擬似的な攻撃を行うのは、ホワイトハットハッカーと呼ばれるようなサイバー攻撃やセキュリティに詳しい専任の技術者です。ペネトレーション(Penetration)は「貫通」や「侵入」を意味する言葉です。

ペネトレーションテストのメリット

まずメリットとして挙げられるのが、実際にシステムに侵入できるのかという具体的な検証ができることです。ペネトレーションテストではサイバー攻撃を仕掛ける側の視点に立って、正規ではない技術や方法も駆使しながらシステムへの侵入を試みるため、非常にリアリティのあるテストができます。

また、テストのためのシナリオは、対象となるシステムの構成、使用されているハードウェアやソフトウェアの種類などについて、全て調べ上げたうえで作成します。つまり、自社の環境に個別に対応したテストを実施することができます。

そしてもう一つのメリットは、一般的なセキュリティ対策を社内の人間が実施する場合、全てのぜい弱性の確認をするのは時間も手間もかかりますが、ペネトレーションテストであればもっと効率的・効果的に、第三者視点からの自社環境の弱点を知ることができます。

ペネトレーションテストのデメリット

ペネトレーションテストのデメリットは、テスト実施者のレベルによって結果が左右されることでしょう。ある技術者が問題なしとしたシステムでも、ほかのもっと高いレベルの知識を持った技術者がテストをすると問題が見つかるかもしれません。また、大規模なシステムに対して精密なテストをしようとすればその分、費用も高くなります。その場合、システムの一部に対象を限定してテストを行うことも可能です。

ペネトレーションテストとぜい弱性診断の違い

ペネトレーションテストと似たセキュリティサービスに、ぜい弱性診断があります。
ぜい弱性診断はシステムを構成しているネットワークやOS、ミドルウェア、アプリケーションなどのぜい弱性を調査し、診断するものです。ぜい弱性とは主に各種のソフトウェアに潜むセキュリティ上の欠陥や弱点、問題点のことを指します。

ぜい弱性診断は、システムにぜい弱性がないかどうかをチェックすることを目的としたテストです。そのため、システムに関連する箇所のセキュリティを網羅的にチェックしていきます。それに対し、ペネトレーションテストは実際の攻撃を想定したテストであるという点が異なります。

また、ぜい弱性診断は自動ツールを使用して診断を行うことができ、ホストあたりの所要時間は数分から長くても数時間程度です。それに対し、ペネトレーションテストは自動ツールも使用しますが、基本的に手動による作業が中心となるため、システムの規模やテスト範囲によって数日から数週間かかります。

ペネトレーションテストの種類

ペネトレーションテストは大きく「内部ペネトレーションテスト」と「外部ペネトレーションテスト」に分けられます。それぞれの違いについて、一つずつ見ていきましょう。

内部ペネトレーションテスト

内部ペネトレーションテストは、外部からアクセスできない内部のシステムに対するペネトレーションテストです。例えば、データベースや認証サーバーなどが挙げられます。社内ネットワークに侵入されたと仮定し、内部から攻撃を行いセキュリティ上のぜい弱性を確認します。また、外部の攻撃者だけでなく内部不正による攻撃も、このテストで確認することが可能です。

外部からアクセスできないシステムであっても、近年では標的型攻撃メールなどから社内ネットワークに侵入されるケースが多発しています。そのため、内部ペネトレーションテストの重要性も高まっているといえるでしょう。

外部ペネトレーションテスト

外部ペネトレーションテストは、インターネットに公開しているシステムに対するペネトレーションテストです。例としては、Webサーバーやメールサーバー、リバースプロキシサーバーなどが挙げられるでしょう。公開サーバーは誰もがインターネットを通じてアクセス可能であり、直接攻撃を受ける可能性があります。そのため、外部ペネトレーションテストで直接攻撃を受けた際のぜい弱性を確認することが重要です。

近年では、前述の標的型攻撃メールの模擬攻撃を使った外部ペネトレーションテストがよく用いられます。マルウェアなどを添付したメールを送付し、システムに侵入できるかどうか、どこまで侵入できるか、といった点をテストします。

ペネトレーションテストの手法

ペネトレーションテストの手法は「ホワイトボックステスト」と「ブラックボックステスト」の2種類に大別されますが、近年では双方の中間である「グレーボックステスト」が実施されるケースも増えています。グレーボックステストは双方を組み合わせたものであるため、ホワイトボックステストとブラックボックステストの特徴を見ていきましょう。

ホワイトボックステスト

ホワイトボックステストでは、事前に対象となるシステムの構成や機器情報などを共有してテストを実施します。システムの設計書をもとにテストケースが作成され、開発者が気づけないレベルの潜在的なぜい弱性も見つけやすい点がメリットです。内部構造が把握できている状態でテストできるため、高いテスト効果が期待できますが、設計書に誤りがあると正確なテスト結果を得られない、というデメリットもあります。

ブラックボックステスト

ブラックボックステストはホワイトボックステストとは異なり、事前にシステムの構成などは共有しない状態でテストを実施します。システムの外側からユーザー目線でテストを実施するため、より攻撃者の立場に近い状態でテストすることになります。システム全体の要件を満たせているかを確認できる点がメリットですが、内部構造は把握できていないため、性能面での評価ができない点がデメリットです。

ペネトレーションテストの実施方法

ペネトレーションテストは次のようなプロセスで実施します。

準備段階

テストの準備フェーズ。ヒアリングによる要求分析を経てテスト対象となるシステムの環境、構成などを分析し、テスト範囲と内容を決定してテスト用の攻撃シナリオを作成します。また、テストを実施するためのツールの準備、ログ取得のためのセッティングなどを行います。

テスト実施

攻撃テストには前述の外部ペネトレーションテスト、内部ペネトレーションテストが用いられ、手法はホワイトボックステスト、ブラックボックステスト・グレーボックステストが用いられます。

ぜい弱性が発見された場合、そのぜい弱性によってどのような被害が及ぶ可能性があるのかを調査します。あるいは機密情報などにターゲットを絞り、システムに侵入してから情報へのアクセスが可能かどうかをテストする場合もあります。

レポート

テスト実行ログをもとに、発見されたぜい弱性などに関するテスト結果を伝えるためのレポートを作成します。

サイバー攻撃の巧妙化や多様化が進むにつれて、ペネトレーションテストの重要性も増しています。自社のシステムが客観的に見て攻略しやすいシステムなのか、それとも堅ろうなセキュリティ対策によって守られた攻略しづらいシステムなのかを確認するために、サイバー攻撃やセキュリティに詳しいホワイトハットハッカーによるテストを受けることを検討してみてはいかがでしょうか。

日立ソリューションズ・クリエイトでも、セキュリティ診断サービスを提供しています。サービスの詳細は、以下のページをご覧ください。
ホワイトハッカーによるセキュリティ診断「セキュリティ診断サービス」

当社の関連ソリューション/サービス

関連記事はこちら