ペネトレーションとは?テストの必要性と実施方法を解説

この記事は約6分で読めます。

開発したシステムが完成して、これからリリースしようと思ったときに気になるのが、システムの脆弱性ではないでしょうか。これから紹介するペネトレーションテストは、自社のシステム固有のシナリオを作成して攻撃をしかけ、実際にシステムに侵入できるかどうか、確認するテストです。

この記事ではペネトレーションテストの概要やメリット、デメリット、さらに導入事例まで紹介します。

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

ペネトレーションテストとは、特定のシステムに標的攻撃が成功しないか、意図的に攻撃を仕掛けて検証するテストのことです。ペネトレーションはPenetration」を綴り、「貫通」や「侵入」を意味する言葉です。

ペネトレーションテストではインターネットを使ってターゲットとなるシステムに外部から攻撃をしかけ、脆弱性が存在した場合、実際に侵入するところまで行います。そのためペネトレーションテストには高い技術力と知識が要求され、セキュリティを専門とするエンジニアによって実施されます。

ペネトレーションテストに似たテストに脆弱性診断があります。脆弱性診断ではシステム全体に対して攻撃を実施します。サーバーやルータ、ファイアウォールなど広範囲に診断を実施するため、脆弱性診断専用のツールを使って実施することもあります。

脆弱性診断が既知の脆弱性の発見を目的としているのに対して、ペネトレーションテストは、意図を持った攻撃者を想定して、その攻撃が成功するかどうか検証するテストであるという点で違いがあります。

ペネトレーションテストの必要性

システム構築が完了しても、そのまますぐに公開するのは危険です。まずは外部からのサイバー攻撃を想定したペネトレーションテストを実施して、システムに脆弱性がないか確認することが重要です。

ペネトレーションテストでは、DDoS攻撃やSQLインジェクションなどの実際の攻撃者が行うサイバー攻撃を実施します。これらのサイバー攻撃を実施した脆弱性を明らかにすることで、具体的な対策を取ることが可能です。

ペネトレーションテストは、システムのサービスイン後も定期的な実施が必要です。なぜなら外部からのサイバー攻撃の進化や、システムのアップデートなどによって、新たな脆弱性が生まれる可能性があるからです。
脆弱性の発見と改善のサイクルを継続することで、より堅牢なシステムを構築できます。

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

ペネトレーションテストはテスト実施者や使用するツールなどによって、若干異なりますが、おおむね以下のような流れで実施されます。

ペネトレーションテストの準備

ますテスト対象のシステム構成を把握し、想定される攻撃パターンをリストアップします。

サイバー攻撃には様々な手法がありますが、考えられる攻撃を全て試すのはコストも必要となり非効率なので、自社のシステムのネットワーク構成や情報の保存環境、アクセスログなどを元に、試行するテストを選択しシナリオを作成します。

攻撃を試行

リストアップした攻撃を自社のシステムに対して順番に実施します。ペネトレーション用のツールを使って自動的に行うテストや、有識者が手動で行うテストなど、様々な方法で攻撃や侵入を試行します。

ペネトレーションテスト報告書を作成

ペネトレーションテストの結果を基に報告書を作成します。報告書のフォーマットはテストを実施した企業やテスト内容によって様々です。
テストを受けた企業はこの報告書の内容を受けて、今後どのような対策を取るか検討します。

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

企業がコストをかけてまでペネトレーションテストをする目的は何でしょうか。
具体的なメリットを2点紹介します。

システムへの侵入可否をテストできる

ペネトレーションテストは作成したシナリオに基づいて、実際にシステムの侵入まで実施するテストです。しかしあくまでもテストであるため、実際には安全な環境で実施されます。

脆弱性の発見は、ペネトレーションテストだけでなく脆弱性診断でも同様です。
しかしペネトレーションテストは予め作成された脅威のシナリオに基づいた確認が可能であることが最大のメリットであり、システムの侵入後に被害の拡大防止が可能かどうか」までを検証できます

報告書でシステムの対策状態を可視化できる

ペネトレーションテストでは自社のシステムに応じたシナリオに基づいて実施されます。そのため一般的な脆弱性のみならず、システム固有の脆弱性についても検証可能です。
さらにテスト後には、テスト実施者による報告書が作成されます。この報告書により、システムの弱点がわかり、今後、対応すべき事項も明確になります

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

システムの脆弱性発見に有効なペネトレーションテストですが、以下の2点のデメリットを知っておく必要があります。

テストの内容によってはコストがかさむ

手動で実施するペネトレーションテストの場合、テストにかかる手間が増えるだけでなく、専門家をアサインするための人件費などが発生するため、内容によっては数百万円単位のコストを見込む必要があります

セキュリティ企業にペネトレーションテストを実施する時は、まず見積りを確認しましょう。
自社の予算に応じて、テスト内容やテスト方法について柔軟に対応をとってくれるセキュリティ企業もあります。

テスト成果は実施者のスキルによる

ペネトレーションテストの成果は、テスト実施者のスキルによって異なることがあります。またテストに使われたツールの種類操作方法によっても、結果にバラツキが発生します

特に実績が少ないセキュリティ企業の場合、コストだけが発生して、正確なテスト結果が得られないことも考えられます。そのため、ペネトレーションテストを依頼する時は、依頼先の企業がペネトレーションテストについて十分な実績があるかどうか、よく確認したほうが良いでしょう。

ペネトレーションテストの事例

株式会社サイバーディフェンス研究所による、実際にペネトレーションテストを実施した導入事例を3点紹介します。

クックパッド株式会社(Webアプリケーション診断)

料理レシピサービス「クックパッド」を運営しているクックパッド株式会社のWebサービスに対して、継続的なペネトレーションテストを実施しています。テストは毎月実施され、高いセキュリティレベルを維持しています。

サイボウズ株式会社(Webアプリケーション診断)

サイボウズ株式会社が運営している自社のクラウドサービス「cybozu.com」にて、サービスに適切なセキュリティを確保するため、アプリケーションに対するペネトレーションテストを実施しました。

株式会社ディー・エヌ・エー(Webアプリケーション診断)

ペネトレーションテストを実施により、画一的な脆弱性の列挙だけでなく、脆弱性が悪用されると、どのようなリスクがあるか認識できました。今後のセキュリティ向上のために、どのような対策を取るのかという優先順位があきらかになりました。

まとめ

ペネトレーションテストに概要について紹介しました。
自社のシステム固有の脆弱性の発見に効果的なペネトレーションテストですが、テスト実施者の技術力や使用ツールにより、得られる結果が異なることも知っておかなければなりません。またコストも高くなりがちです。

ペネトレーションテストを依頼する時は、依頼先の企業を十分に検討し、テスト内容やコストについて、しっかりと考慮することをおすすめします。

セキュリティ対策をするセキュリティ技術の導入
タイトルとURLをコピーしました