Introduction
脆弱性診断だけではなく、ペネトレーションテストを実施した方がよいのでは?と検討をしている企業も多いのではないでしょうか。ペネトレーションテストとは、企業ごとのシステム構成や機器の状況、セキュリティの脅威のトレンドなどにあわせて攻撃シナリオを作成し、テストするものです。しかし、脆弱性診断と何が違うのか、具体的に何ができるのかなど、疑問をもつ人も多いかもしれません。
この記事では、ペネトレーションテストとは何か、その種類やメリット、注意点、実施の流れなどについてご説明します。
目次
ペネトレーションテストとは?
ペネトレーションとは、侵入、貫通などの意味をもつ言葉です。想定されるサイバー攻撃のシナリオを検討し、実践的にシステムの侵入を仕かけてみて問題がないかを確認します。
ここでは、ペネトレーションテストの詳細や脆弱性診断との違いなどについて解説します。
システムへの擬似的な攻撃を行うテスト
ペネトレーションテストとは、金融庁の『諸外国の「脅威ベースのペネトレーションテスト(TLPT)」に関する報告書」(平成30年5月)』によると、以下のように定義されたテストのことです。
ペネトレーションテスト
一般的には、Webインターフェースを有するシステムへの擬似的な攻撃により、主に技術的な脆弱性の有無を調査するためのテスト
網羅的に脆弱性を確認する脆弱性診断とは異なり、特定のシナリオのもとでセキュリティの問題がないかを確認します。ペネトレーションテストは攻撃シナリオを想定してから行うので、現在のシステムの状況やテストの目的を正しく理解しておく必要があるでしょう。
脆弱性診断との違い
ペネトレーションテストと脆弱性診断は、何が違うのでしょうか?
脆弱性診断は、厚生労働省の職業情報提供サイトjob tag『セキュリティエキスパート(脆弱性診断)』によると、以下のように定義されます。
脆弱性診断
システムに存在する脆弱性やセキュリティ上の不備についてツール等を使用して網羅的に診断するもの
ペネトレーションテストと脆弱性診断の違いを、以下の比較表で比較してみましょう。
【ペネトレーションテストと脆弱性診断の違い】
ペネトレーションテスト | 脆弱性診断 | |
目的 | 特定の攻撃手法を受けても問題がないかを確認する | システムを網羅的に検証し、脆弱性を検出する |
手法 | 状況や目的に応じて攻撃シナリオを作成し、攻撃を仕かけて問題がないか確認する | 診断項目を検討し、ツール診断と手動診断で網羅的に脆弱性を診断する |
調査対象 | 検証内容によって異なる | システム全体 |
調査期間 | 数日~数週間 | ツール診断だけであれば1ホストあたり数分程度 手動診断を含む場合は数日かかる |
必要な担当者のスキル | かなり高い | 高い |
比較表を見るとわかるとおり、テストの目的や手法、調査対象はまったく異なります。どちらを選ぶかは、それぞれの内容を理解したうえで選ぶ必要があるでしょう。
ペネトレーションテストの重要性
ペネトレーションテストは、それぞれの企業が抱える脅威やリスクを具体的に分析し、攻撃シナリオを再現して擬似的な攻撃を仕かけるテストです。そのため、より実際のケースに近いセキュリティリスクについて検証できる、高度なテスト手法といえます。
セキュリティの脅威は年々高度化、多様化しており、システムに脆弱性がなければ問題ないとはいえません。そのため、企業ごとのセキュリティ対策の状況やセキュリティリスクの傾向、影響の大きさなども踏まえ、より実践的なテストを行う重要性が高まっています。
▼あわせて読みたい▼
>>脆弱性診断とペネトレーションテストの違いとは?自社に必要なのはどちらか、選び方を解説のページへ
ペネトレーションテストを実施するメリット
ペネトレーションテストを実施すると、どのようなメリットがあるのかを見ていきましょう。
リアリティのあるテストができる
攻撃者が考える攻撃シナリオを作成し、そのシナリオに沿って実際に攻撃を仕かけるテストなので、リアリティのあるテストを実施できます。
たとえば、社内ネットワークの管理者権限をもつシステム管理者が内部犯行を起こす場合、脆弱性診断の結果が良好でも犯行を防ぐことは不可能です。そのような脅威を防ぐため、システム管理者による内部犯行の攻撃シナリオを作成してテストを実施すれば、セキュリティ上の問題点を検出できます。その結果、管理者権限をもつ社員を限定する、アクセスログをより詳細に取得するなどの対策が浮かびあがってくるかもしれません。
自社のシステム・ネットワークに柔軟に対応したテストができる
ペネトレーションテストでは、自社のシステムやネットワークの状況にあわせて攻撃シナリオを作成し、テストします。そのため、それぞれの状況にあった柔軟なテストができることがメリットです。
たとえば、外部向けセキュリティ対策は万全でも、連携システムのセキュリティの検討が不足している場合もあります。この場合、連携システムを介した攻撃シナリオを重点的に行うべきでしょう。
第三者目線で脆弱性を発見できる可能性がある
自社内でシステム管理を行っていると、当事者からは見えないセキュリティリスクが存在することもあります。セキュリティソフトの導入やアップデート管理、ファイヤウォールなどを完璧に配備していたとしても、対応漏れが存在する可能性は十分にあるのです。
そこで、ペネトレーションテストを外部の専門会社に依頼すれば、第三者目線でセキュリティリスクの有無を検証してくれます。自社のセキュリティ対策は完璧と思っていても、セキュリティに詳しく多くの案件を手がけてきた専門家が見ると、問題が見つかる可能性は十分にあります。
関連サービスについて
ペネトレーションテストの実施にあたっての注意点
ペネトレーションテストを実施すると多くのメリットを得られますが、一方で注意すべき点も存在します。ペネトレーションテストは、高い技術と豊富な知識、経験が必要とされるむずかしいテストです。そのため、ここでご説明する注意点について、あらかじめ知っておく必要があるでしょう。
実施者の技量によって成果が左右される
ペネトレーションテストは、個々の状況によって、もっとも適した攻撃シナリオを作成して実施するものです。脆弱性診断のように、ある程度診断項目が決まっている機械的な診断がメインの診断とは、大きく異なります。
システムの状況、企業によって異なる業務内容や運用方法、流行っているウィルスや狙われることが多い脆弱性の性質などで、テスト内容は変わります。また、作成した攻撃シナリオが的外れで、まったく予想しなかった攻撃を受けてしまうこともあるかもしれません。
このように、ペネトレーションテストは実施者の技量、知識、経験によって成果が大きく左右されます。そのため、できるだけ経験豊富で実績がある専門会社に依頼するのがよいでしょう。
コストや所要日数が膨大になる可能性がある
ペネトレーションテストを実施するためには、準備に何日もかかり、コストが膨大になる可能性もあります。個々のシステムの状況や運用方法などによって作成する攻撃シナリオは違うので、情報収集やシナリオの検証などに時間がかかるためです。シナリオができたら、攻撃方法なども検討しなければなりません。
一般的に、ある程度診断項目や手法が確立している脆弱性診断よりも、ペネトレーションテストの方が所要日数やコストが膨らむ可能性が高いです。
ペネトレーションテストの種類
ペネトレーションテストには、内部ペネトレーションテストと外部ペネトレーションテストの2種類が存在します。それぞれについてご説明します。
内部ペネトレーションテスト
内部ペネトレーションテストとは、外部からアクセスできないシステムや機器に対するテストです。すでに内部に攻撃者が侵入している前提で、内部のシステムに攻撃するテストを行います。主に、システム管理者や従業員などによる内部犯行を想定しています。
外部ペネトレーションテスト
外部ペネトレーションテストとは、外部からシステムに侵入することを想定したテストです。具体的には、インターネットアクセスにより、サーバー機器や社内端末などに外部から侵入して攻撃されることを想定して行います。主に、外部から第三者による侵入を想定して実施します。
ペネトレーションテストの手法
ペネトレーションテストは、ブラックボックス型、ホワイトボックス型、その中間のグレーボックス型が存在します。それぞれのメリット・デメリット、どのようなケースに向いているかを解説します。
ブラックボックス型
ブラックボックスとは、箱の中身が何かわからない状態を指し、テスト対象のシステム構成や機器の情報などを知らない状態でテストする手法です。システム構成や機器情報などを知らないユーザー目線のテストなので、システムや機器が要求どおりに動き、仕様を満たしているかを確認できます。
ただし、内部を理解せずにテストをするので、問題点を見つけにくく、費用対効果が低いというデメリットもあります。システム設計者などが予期しない不具合を見つけたいときに、適しているでしょう。
ホワイトボックス型
システム構成や機器の情報などを知っている状態でテストする方法です。詳しい情報を知ったうえでテストできるため、システムや機器の弱点を狙ってテストできます。そのため、問題点を比較的見つけやすいというメリットがあります。一方で、設計者が意図していない不具合を見つけにくいのがデメリットです。
この手法は、システムや機器の状況にあった詳細なテストを行いたい場合に向いているでしょう。
グレーボックス型
ホワイトボックス型とブラックボックス型の中間に位置するのが、グレーボックス型です。両方のメリットを得つつ、デメリットを補いたい場合に適しています。
ペネトレーションテストの流れ
ペネトレーションテストの流れについてご説明します。
①準備
対象システムや機器の状況を把握し、テストシナリオを作成します。
内部ペネトレーションテストと外部ペネトレーションテスト、また、ブラックボックス型とホワイトボックス型のそれぞれどちらを選ぶのかなどの検討も必要です。
②テスト実施
シナリオに沿って、対象システムや機器に対する攻撃を実施します。
③レポート
テストの結果を検証し、レポートにまとめます。
ペネトレーションテストを実施する頻度
ペネトレーションテストは、どれくらいの頻度で実施すべきなのでしょうか?
クレジットカードの会員データを安全にとり扱うために定められた、クレジットカード業界のセキュリティ基準PCI DSSの『PCI DSS 要件 v3.2』によると、以下のとおり定められています。
ペネトレーションテストを実施する頻度
外部のペネトレーションテストを少なくとも年に一度および大幅なインフラストラクチャまたはアプリケーションのアップグレードや変更(オペレーティングシステムのアップグレード、環境へのサブネットワークの追加、環境へのウェブサーバの追加など)後に実行する。
システムの導入時や機能追加、アップグレード、変更時以外にも、年に一度定期的に行う必要があるとされています。
セキュリティベンダー選定のための比較チェックシート
脆弱性診断サービスの導入にあたり、数あるセキュリティベンダーの中から最適なベンダーを選定するためには確認すべき観点が多くあり、それらを正しく判断するためには本来豊富な知見が必要です。
しかし、担当者の誰しもがそのような知見を持っている訳ではありません。そこで、SHIFTは、誰でも簡単に重要な観点を押さえながら、ベンダーの比較検討ができるチェックシートをご用意しました。お客様に合った最適なセキュリティベンダーを選んでいただくことにお役立ていただければ幸いです。
脆弱性診断サービスの導入にあたり、数あるセキュリティベンダーの中から最適なベンダーを選定するためには確認すべき観点が多くあり、それらを正しく判断するためには本来豊富な知見が必要です。
しかし、担当者の誰しもがそのような知見を持っている訳ではありません。そこで、SHIFTは、誰でも簡単に重要な観点を押さえながら、ベンダーの比較検討ができるチェックシートをご用意しました。お客様に合った最適なセキュリティベンダーを選んでいただくことにお役立ていただければ幸いです。
まとめ
この記事では、ペネトレーションテストとは何か、その種類やメリット、注意点、実施の流れなどについてご説明しました。
ペネトレーションテストは攻撃シナリオを作成して、個々の状況にあったテストを実施するものです。そのため、実施者には高度なスキルや専門性、豊富な経験が求められます。
ペネトレーションテストを実施する場合は、実績が豊富な専門会社に依頼することを強くおすすめします。自社のシステムや機器の状況、セキュリティ脅威のトレンドなどにあった効果の高いテストを実施できるでしょう。
>>SHIFTのセキュリティソリューションのページへ
>>お問い合わせページへ
>>料金についてページへ