ブログ

ペネトレーションテストとは?テストのやり方や種類、費用相場を解説!

2024/12/20 ブログ

 

ペネトレーションテストのやり方が気になるけれど、実施方法は?

 

ペネトレーションテストのやり方には、どのような手順や流れがあるのでしょうか。

 

今回は、ペネトレーションテストのやり方について解説します。また、ペネトレーションテストの種類や費用相場もまとめました。

 

これを読めば、ペネトレーションテストのやり方を理解でき、気を付けるべき注意点を知ることができます。

 

先に結論を言うと、ペネトレーションテストのやり方は、自社システムが抱えるサイバー攻撃の被害を想定し、目的を明確にすることで現実的なシナリオ作成や模擬攻撃が実施できますよ。

 

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

ペネトレーションテストとは、事前にシナリオを作成し、自社のシステム・ネットワーク・サーバ・PCなどに、実際に攻撃者がどこまで侵入できるのかを検証するテストです。

 

システム全体の脆弱性を洗い出す脆弱性診断とは別物であり、より実践的な形式で第三者が侵入できるかを技術者のスキルで診断します。

 

自社のシステムやネットワークなどが攻撃されたり侵入されたりすることを防ぐためには、脆弱性がないかどうかを徹底的に調べなければなりません。

 

セキュリティレベルを向上させるためには、脆弱性診断で一通り脆弱性を解消し、十分なセキュリティ対策を施した上でペネトレーションテストを実施することが望ましいでしょう

 

ペネトレーションテストの目的

ペネトレーションテストの目的は、現実的なシナリオに基づいた目標を設定してシステムに疑似的な攻撃を行い、その目標を達成できるかどうかを検証することです。

 

例えば、「機密情報の窃取」や「システムの停止」など企業が抱えるインシデントリスクをシナリオのゴールに設定し、そのゴールを達成するために様々な攻撃方法やツールを組み合わせてシナリオを設定・実行します。

 

ゴール達成に向けた実践的な模擬攻撃の結果から、特定の脆弱性に対する適切な分析やテスト対象システムが堅牢であるかどうかの評価が可能となることに加え、侵入を許した問題があった場合には、その侵入経路を特定することができます

 

そのため、攻撃者が何を目的としてターゲットのシステムに侵入してくるのかを具体的に想定して、シナリオを作成しテストを実施しましょう。

 

ペネトレーションテストのやり方

ペネトレーションテストのやり方は、基本的に「シナリオ作成」「システムへの攻撃の実施」「報告書の作成」の3段階に分けて行われます。

 

では、ペネトレーションテストのやり方について、具体的に見ていきましょう。

 

シナリオを作成する

まず始めにやらなければならないことは、具体的なシナリオの作成です。ゴールとする想定被害と具体的なテスト対象の範囲を決めます。

 

ペネトレーションテストはひとつのテストにつき数週間~1ヶ月程度かかるため、多くの手段がある中からテスト対象となるシステムなどを考慮し想定されるシナリオを作成します。

 

加えて、テスト回数が増えることでコストがかかったり、予期せぬ事故が起きる可能性があったりするため、事前にデータのバックアップを取得するなどして環境の準備をしておくと良いでしょう

 

調査対象となるシステムへの攻撃を実施する

シナリオ完成後、作成した手順に沿って実際に対象システムへの攻撃を実施し、想定していた被害を発生させることができるかを検証します。

 

また、ペネトレーションテストでは、ツールを使用することもあれば、専門知識を持つ技術者が行うこともあります。攻撃を実施する際は、使用するツールの種類や操作方法で得られる結果が異なったり、技術者のスキルによって大きく結果が変わる可能性があるため、注意しなければなりません。

 

特に、技術者のスキルには個人差があるため、外注する際はきちんと実績を確認するようにしましょう

 

報告書を作成する

攻撃実施後、テスト結果に基づいて報告書を作成します。報告書は書式が統一されていないため、テストを実施した外注先によって異なります。

 

報告書はただ単に作成して提出するだけではなく報告会を行うこともあるため、外注した場合はテストを実施した技術者が報告書の内容を元に解説します。

 

そのため、事前に報告書の取り扱いがどのようになるのかを訪ねておくと良いでしょう。また、自社で報告書を作成し報告会を行う場合は、テスト結果を元に評価や対策提案をしっかりと議論するよう心がけましょう

 

ペネトレーションテストを実施する際の注意点

ペネトレーションテストを実施する際の注意点には、主に以下の3つがあります。

 

・業務に影響を及ぼす可能性がある

・コストがかかる

・脆弱性を見つけることが目的ではない

 

ペネトレーションテストを実施することで、業務に支障が出たり、費用が必要になったりするため、気を付けなければならない点があります。では、それぞれの注意点について詳しく解説します。

 

業務に影響を及ぼす可能性がある

ペネトレーションテストを実施する際の注意点1つ目は、業務に影響を及ぼす可能性があることです。

 

なぜなら、ペネトレーションテストを実施する際は、通常業務に影響が出ないように模擬攻撃を行いますが、想定外のアクシデントが起きる可能性もあるからです。

 

例えば、大量のアラートやシステムへの高負荷、意図しない設定変更などが考えられます。

 

そのため、ペネトレーションテストを実施する際は、事前にデータのバックアップを取得するなど、想定外の事態に備えて準備しておくことが必要でしょう。

 

コストがかかる

ペネトレーションテストを実施する際の注意点2つ目は、コストがかかることです。

 

なぜなら、ペネトレーションテストは脆弱性診断と比べて、専門的な知識と技術が必要になってくるからです。

 

また、実際のテスト対象の範囲や実施期間によって、金銭的コスト・時間的コストが高くなる傾向にあります。

 

さらに、ペネトレーションテストを実施する際は、事前の準備にも時間を必要とする場合があるため、テストを実施するまでの準備期間にもコストがかかることを把握しておきましょう。

 

脆弱性を見つけることが目的ではない

ペネトレーションテストを実施する際の注意点3つ目は、脆弱性を見つけることが目的ではないことです。

 

なぜなら、ペネトレーションテストは脆弱性診断とは異なり、システムに潜んでいる脆弱性がどのように悪用されるのか、どのような影響が発生するのかを検証することを目的にしているからです。

 

ペネトレーションテストで脆弱性が発見されることはありますが、目的はそれらを網羅的に調べることではありません。

 

目的をきちんと理解した上で脆弱性診断とペネトレーションテストを併用し、セキュリティリスクを低減させましょう。

 

シナリオの種類

ペネトレーションテストのシナリオの種類は、大きく2つに分けられます。攻撃シナリオの前提によって使い分ける必要があるため、どのような特徴があるのかを知っておくことが重要です。

 

では、ペネトレーションテストのシナリオの種類について、具体的に見ていきましょう。

 

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

内部ペネトレーションテストは、攻撃者が組織内部に侵入した後の攻撃シナリオを想定したテストです。

 

組織の内部ネットワークから疑似的な攻撃を実行することで、組織の人物がシステムやリソースにアクセスできるかを評価します。

 

例えば、従業員の内部不正やマルウェア感染により、社内の機密情報を検知されずに外部へ持ち出せるかを検証します。

 

範囲は組織によって異なりますが、通常は内部ネットワークやアプリケーション、エンドポイントデバイス、データベース、メールシステム、共有ファイルなどが対象です。

 

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

外部ペネトレーションテストは、攻撃者が組織内部に侵入する前の攻撃シナリオを想定したテストです。

 

攻撃者視点で外部から組織のネットワークやシステムへのアクセスを目的とした疑似的な攻撃を実行することで、システムの脆弱性やセキュリティリスクを評価します。

 

例えば、攻撃者がインターネット経由で外部からポートスキャンなどを行い、標的とする端末に空いている穴を探すことで実際にそこから侵入できるかを検証します。

 

範囲は外部Webサイトやクラウドサービス、ネットワーク機器など組織の外部にあるシステムが対象です。

 

テストの種類

ペネトレーションテストの実施方法の種類は、大きく3つに分けられます。事前にテスト対象の内部構造をどれくらい把握している状態で実施するかによって変わってくるため、それぞれの違いや特徴を理解する必要があります。

 

では、ペネトレーションテストの実施方法の種類について、具体的に見ていきましょう。

 

ブラックボックステスト

ブラックボックステストは、システム情報を把握せず、テストを実施するために最低限必要な情報のみ与えられた状態でテストを行う方法です。

 

実際の攻撃者に近い状態でテストを行うため、現実的なシナリオをシミュレートできます。

 

事前にシステム情報が共有されないため、リアルな結果が得られやすい点がメリットですが、ホワイトボックステストに比べて費用対効果が低い点がデメリットです。

 

また、システムやアプリケーションの変更に柔軟に対応でき、リアルタイムで脆弱性を評価できるため継続的な評価のアプローチに有効です。

 

ホワイトボックステスト

ホワイトボックステストは、システム情報を把握している状態でテストを行う方法です。

 

本来は公開されていないシステムのコードを確認できるため、ブラックボックステストでは発見しにくい脆弱性を探して攻撃を行うことが可能になります。

 

比較的短時間で結果が得られる上、費用対効果が高いメリットがありますが、事前にシステム情報を共有するため、ブラックボックステストより結果の精度が低い可能性がある点がデメリットです。

 

また、仕様書を読んだりコードを解析したりする必要もあるため、コストが高くなる傾向にあります。

 

グレーボックステスト

グレーボックステストは、ホワイトボックステストとブラックボックステストを組み合わせた中間的なテスト方法です。

 

システム情報や仕組みを知った上で、残りの部分は外部からの視点でテストを行うため、ブラックボックステストとホワイトボックステストのメリットが組み合わさり、テスト効率を高めることができます。

 

例えば、内部システムのサーバ情報など、一部の情報を把握した状態でテストを行うため、提供された情報を活用することで効率化を図ることができ、実際の攻撃者視点でのテストも可能です。

 

グレーボックステストを活用する際は、目的やコストなどを総合的に考慮してテストを行うかを判断しましょう

 

ペネトレーションテストの費用相場

ペネトレーションテストの費用は、テスト対象の規模や実施期間、提供されるサービスの内容など様々な要因で大きく変わります。

 

一般的には、数万円から数百万円まで幅広い価格帯がありますが、主に以下の要因で決定されます。

 

【テスト対象】

・外部テスト、内部テスト、アプリケーションのテスト、ネットワーク全体のテストなど、実施するテスト対象によって技術者の専門性や必要な人数が異なるため。

 

【対象の複雑さ】

・対象となるシステム、アプリケーション、ネットワークなどが複雑な環境や大規模なネットワークである場合、テストの計画から実施までに必要な工程が増えるため。

 

【レポート作成】

・テスト結果を分析し、セキュリティの改善提案を行うレポート作成、報告回、対策実施に関わるアドバイスもテストの工程に含まれる場合があるため。

 

【テストの場所】

・オンサイト、リモートでの実施など、テストの実施場所によって出張費用などの追加費用が発生する場所があるため。

 

ペネトレーションテストの費用は、検証する内容や追加項目によって大きく変わるため、目的とスコープに見合った予算を確保し、信頼できる企業に依頼することが大切です。

 

まとめ

今回は、ペネトレーションテストのやり方やペネトレーションテストの種類、費用相場などについて解説しました。

ペネトレーションテストは、「シナリオ作成」「攻撃の実施」「報告書の作成」の3段階で行われます。テスト対象の範囲や実施期間などでコストが大幅に変動するため、自社システムにとって効果的なテストが行えるように目的や目標を明確にしましょう。

 

ペネトレーションテストは、自社システムに潜んでいる脆弱性を悪用してどのような攻撃や被害が想定されるのかを検証するためのテストです。インフォシールド合同会社では、サイバーセキュリティに関するサービスの見積もりやサービス提供を行っております。

詳細はこちらからご確認ください