15 8月 ペネトレーションテスト(侵入テスト)とは?
ペネトレーションテストとは、企業のコンピュータ・システムやIT、インターネット環境に対してわざとサイバー攻撃を仕掛けて、そこに施しているセキュリティ対策の課題を探す作業です。侵入テストと呼ぶこともあります。
この記事では、ペネトレーションテストを行う目的、方法、効果を解説します。
なぜペネトレーションテストを行うのか
ペネトレーションテストの目的は、企業などが保有したり利用したりしているネットワーク、サーバー、システム、パソコン、モバイル端末などのITがしっかり守られているかどうか実際に仮想の攻撃テストを行いチェックすることです。
セキュリティは本当に自社のITを守ってくれるのか
企業は自社のITを守るためにセキュリティ対策を施していると思いますが、経営者やIT担当者は、そのセキュリティがITを守る実力を有しているのかどうか把握しているでしょうか。
残念ながら、攻撃者たちは日々、セキュリティを破る方法を考えています。そして攻撃者がサイバー攻撃を仕掛けて自社のセキュリティが破られてしまったら、ITが破壊されたり、情報が盗まれたり、身代金を要求されたりしてしまいます。
セキュリティが正常に機能することと、セキュリティが実際の攻撃からITを守ることは、必ずしも一致しません。
そのため企業は、セキュリティ対策を施しただけでは足りず、セキュリティにITを守る実力があることを確認しなければなりません。
それでペネトレーションテストが必要になるわけです。
金庫の破壊を試みて壊れなかったら合格
ペネトレーションテストを受けてもセキュリティが破壊されなかったら、そのセキュリティはITを守る能力がある、と考えることができます。
頑丈な金庫を置くことがセキュリティだとしたら、泥棒のスキルを使ってその金庫の破壊を試みるのがペネトレーションテストになります。
テストはどのように行うのでしょうか?
ペネトレーションテストは、セキュリティ会社などが、サーバーやシステムなどを保有している企業などに提供するサービスです。ペネトレーションテストの方法を紹介します。
攻撃者と同じスキルを持つホワイトハッカーが試す
ペネトレーションテストは、セキュリティやサイバー攻撃に詳しい技術者が行います。この技術者のことをホワイトハッカーと呼びます。
セキュリティ会社のホワイトハッカーは、攻撃者と同じサイバー攻撃スキルを持っているので、それを使ってクライアント企業のITに攻撃を仕掛けます。
セキュリティの種類の分だけペネトレーションテストの種類がある
ITやネットワークのセキュリティといっても、さまざまな種類があります。例えば家のセキュリティであれば、玄関のセキュリティ、金庫のセキュリティ、寝室のセキュリティなどがありますが、ITもこれと同じです。
したがってペネトレーションテストでも、すべてのセキュリティに対して攻撃しなければなりません。
一般的に次の攻撃(ペネトレーションテスト)を行います。
■ペネトレーションテストの一般的な攻撃
- 入口のセキュリティへの攻撃
- エンドポイントのセキュリティへの攻撃
- 内部セキュリティへの攻撃
- 出口セキュリティへの攻撃
1つずつみてきましょう。
入口のセキュリティに対して攻撃する
企業のITの「入口」とは、例えば企業のサーバーやシステムへのアクセスになります。入口のセキュリティにはIPS/IDSやサンドボックスなどがあります。
IPS/IDSは、異常を検知した通信を遮断したり、正常ではない通信を遮断したりする仕組みです。IPS/IDSは、サーバーへの攻撃や、マルウェアという悪意あるソフトウェアによる攻撃から守るのが得意です。
サンドボックスは、コンピュータ内に仮想環境をつくり、そこでアプリケーションを動かす技術です。サンドボックスは、コンピュータの他の領域と隔離されているので、サンドボックスに攻撃が仕掛けられても損害はそのなかにとどまり、コンピュータ全体に被害が及びません。
入口のセキュリティへのペネトレーションテストは、IPS/IDSやサンドボックスなどに攻撃を仕掛け、攻撃から守ることができるのかや、損害がサンドボックス内だけにとどまるのかなどを調べます。
エンドポイントのセキュリティに対して攻撃する
企業のITの「エンドポイント」とは、従業員が業務で使っているパソコンやスマートフォン、タブレットなどの機器のことです。エンドポイントのセキュリティにはアンチウイルス・ソフトなどがあります。このソフトをIT機器にインストールして使います。
アンチウイルス・ソフトは、IT機器に侵入したウイルスやマルウェアを検知して除去します。
したがって入口のセキュリティへのペネトレーションテストは、アンチウイルス・ソフトに攻撃を仕掛け、検知と除去がうまくいくか調べます。
内部のセキュリティに対して攻撃する
企業のITの「内部」とは、例えばサーバーや、サーバーのなかのファイルやデータなどのことです。内部のセキュリティには認証やアクセス制御などがあります。
認証やアクセス制御を設定しても、攻撃者はそれを破ってきます。
したがって内部のセキュリティへのペネトレーションテストは、認証やアクセス制御に攻撃を仕掛け、認証できてしまうのかどうかや、アクセス制御が機能するかどうかを調べます。
出口のセキュリティに対して攻撃する
企業のITの「出口」とは、例えば外部のサーバーやクラウドなどへのアクセスです。
ITを多用している企業は今や、自社の業務を自社のITやサーバーやネットワークだけで処理できなくなっています。ITサービス会社が提供する外部サーバーやクラウドなどを使うことになり、そこにセキュリティ上の隙(すき)が生まれ攻撃者のターゲットになります。
出口のセキュリティにはプロキシサーバーや振る舞い検知などがあります。
プロキシサーバーは、インターネットへのアクセスを代理で行うサーバーのことです。これを使うと、攻撃されたときにプロキシサーバー上でチェックすることができます。プロキシサーバー上で攻撃を確認してそれを排除できれば、自社のITに被害が広がりません。
振る舞い検知はウイルス対策ソフトの機能の1つで、マルウェアの挙動をキャッチして、それがマルウェアであることを知らせます。
セキュリティへのペネトレーションテストでは、プロキシサーバーや振る舞い検知などに攻撃を仕掛け、プロキシサーバー上で攻撃をチェックできるかどうかや、振る舞い検知が作動するかどうかを調べます。
どのような効果が得られるのか
ペネトレーションテストを実行すると、セキュリティが堅牢なのか、それとも脆弱であるのかがわかります。脆弱とは「弱っている」という意味で、そこにサイバー攻撃が仕掛けられたら簡単に突破されてしまいます。
もしペネトレーションテストに耐えられず侵入されてしまったら、「そこが弱い」とわかるので、企業は「そこに」対策を講じることができます。
必要なところに必要な補強ができる
例えば、世間でサイバー攻撃事件が頻発したら、企業の経営者やIT担当者は「うちの会社のITは大丈夫だろうか」「うちが攻撃されたときセキュリティはきちんと機能するのだろうか」と心配になるはずです。
しかしだからといって、セキュリティを丸ごと刷新するには相当なコストがかかります。
そこでペネトレーションテストを行えば脆弱性がある部分を特定できるので、そこを集中的に補強することができます。
一部のセキュリティだけを強化するので、セキュリティを丸ごと刷新するよりコスト安に対策できます。
脆弱性診断とペネトレーションテストの違い
ペネトレーションテストと似たセキュリティ対策に脆弱性診断がありますが、両者は明確に異なる施策です。
ホワイトハッカーが実際に攻撃するかどうか
脆弱性診断では、ホワイトハッカーが実際にITを攻撃することはありません。脆弱性診断の担当者は、ネットワーク、サーバー、システム、パソコン、モバイル端末などに施されたセキュリティをチェックして弱っていないかどうか確認します。
脆弱性診断では、セキュリティが正常に機能していれば「合格」と判定します。
例えば、自動車のエアバックテストに置き換えると、エアバックがきちんと膨らむかどうか外観や動作チェックするのが脆弱性診断です。対して、自動車に実際に衝撃を与えて、シートに座らせた人形がエアバッグによって壊れないかどうか調べるのがペネトレーションテストになります。
まとめ~自社のビジネスを守るためにペネトレーションテストを
自社のITがビジネスに直結しているような企業は、脆弱性診断を受けただけでは足りず、ペネトレーションテストを受けたほうがよいでしょう。
ペネトレーションテストを受けて、「本物の攻撃でもセキュリティが機能する」ことを確認して初めて、自社のビジネスを守ることができます。