「 ペネトレーションテストと脆弱性診断にはどのような違いがあるのだろうか」
そんな疑問を持つ方に当記事では両者の違いを目的や手法の観点から解説します。当記事をお読みいただくことで、自社ではどちらを実施すべきか判断ができるようになるため、ぜひ参考にしてください。
ペネトレーションテストと脆弱性診断の違い
ペネトレーションテストと脆弱性診断はどちらもセキュリティを評価するための取り組みですが、両者の実態は異なるものです。両者の実施目的や手法の違いを確認しましょう。
目的の違い
ペネトレーションテストは社内システムの脆弱性から侵入(不正アクセス)し、実際の攻撃を受けるとどうなるかを確認するテストです。攻撃者目線で社内システムを攻撃し、自社のセキュリティ状況に応じた弱点や対策を判断するために行われます。
一方で脆弱性診断は脆弱性を洗い出すために行われるテストです。診断の結果、脆弱性が見つかっても侵入を行って、どういった被害が発生するのか、までは確認しません。脆弱性が見つかれば、脆弱性の内容やリスクレベル、修正方法を提案し、セキュリティ強化につなげることが目的です。
よって両者は社内システムの脆弱性を見つけ出す点は共通です。ペネトレーションテストは1つの脆弱性が見つかればそれだけで侵入を行ってテストを実施できます。一方で、脆弱性診断は脆弱性を一通り見つけるためのテストです。
目的の違いから、自社ではどちらを実施すべきか判断しましょう。予算の問題はありますが、両方を実施することも可能です。
手法の違い
ペネトレーションテストは攻撃対象がアプリやインフラなどさまざまです。脆弱性が見つかればその点に対して、重大なデータを盗み出す、改ざんするといった攻撃を仕掛けられるのかテストをします。また攻撃手法もさまざまであり、見つかった脆弱性ごとに仕掛けやすい攻撃を仕掛けることで、攻撃者目線のテストが実現し、危険度や対策の把握が可能です。実施頻度は年に1~2回必要になると考えましょう。
一方で脆弱性診断はアプリやプラットフォームに対する脆弱性診断が基本になります。実施の際はツールを用いてスキャンをすることが一般的です。スキャンの結果、脆弱性が見つかれば、リスト化やセキュリティ強化のアドバイスが行われます。実施頻度はアプリやプラットフォームの開発、更改のたびに行われることが一般的です。
ペネトレーションテストと脆弱性診断はどちらも「セキュリティに関する検査」
ペネトレーションテストと脆弱性診断はどちらも、自社のセキュリティを評価するための取り組みです。それぞれの違いを理解するために、概要や種類についても把握しておきましょう。
ペネトレーションテストとは
ペネトレーションテストは社内システムの脆弱性を突いて意図的な攻撃を行い、セキュリティの評価をするためのテストです。ペネトレーションは侵入を意味します。対象となる社内システムはアプリやプラットフォームはもちろん、インフラも含んだ全てのリソースです。
ペネトレーションテストは脆弱性を見つけるところから始まります。複数の脆弱性が見つかる場合は、攻撃者チームがどの脆弱性を突いた攻撃をするのか、シナリオを計画して実際の攻撃を行うテストです。最終的に攻撃者チームはシステムの改ざんや情報漏えいを実現できるのか、を評価します。
ペネトレーションテストによる評価の結果、以下が分かります。
- どのような脆弱性があるのか
- どういった対策をすべきか
- 攻撃を受けた結果、どのような被害が生まれてしまうのか
- 被害がどの程度拡大する恐れがあるのか
ペネトレーションテストは脆弱性の診断や対策の提案にとどまらず、実際の攻撃や被害状況を想定した評価が行われることが特徴です。社内システム担当者はセキュリティ強化実施の必要性だけでなく、心理的にも危機感を覚えます。よって担当者がセキュリティへの意識をより高める効果も期待されます。
ペネトレーションテストの種類
ペネトレーションテストの実施手法は大きく2種類に分けられます。
- ホワイトボックステスト
- ブラックボックステスト
ホワイトボックステストは事前に社内システムの詳細情報を得た上で脆弱性を探り、攻撃を仕掛けるテストです。設計書を見ながらシナリオを計画できるため、担当者の目が届きにくい箇所を予測した上で攻撃を仕掛けられます。
一方でブラックボックステストは社内システムの詳細情報を得ないで攻撃を仕掛けるテストです。脆弱性の予測をせず、攻撃をしながら脆弱性を見つけてシナリオを計画する必要があります。よって攻撃者チームの負担が高くなりやすいですが、実際の攻撃に近い形で行われることが特徴です。
また近年は両者を組み合わせたグレーボックステストが行われることもあります。
脆弱性診断とは
脆弱性診断は社内システムの脆弱性を見つけるために行うテストのことです。脆弱性が見つかった場合でも、ペネトレーションテストのように攻撃を仕掛けることはしません。ただし、脆弱性であることを確認するための網羅的な疑似攻撃を実施する場合はあります。その場合も含め、あくまで脆弱性を見つけ出し、対応策の提案や評価を行うことが目的です。
脆弱性診断を行うことで、結果として以下が分かります。
- どのような脆弱性があるのか
- どういった対策をすべきか
結果から企業は社内システムの脆弱性を把握し、セキュリティ強化に努めます。脆弱性診断の結果は、人間の健康診断のようなものです。診断結果から、社内システム(体内)のどこに問題があるのか、どのようにセキュリティ強化(生活の見直し)を行うべきか、を判断できます。
脆弱性診断を実施すると、結果を踏まえてセキュリティ強化のプランがつくりやすくなります。
脆弱性診断の種類
脆弱性診断は以下の2つに分かれます。
- アプリケーション診断
- プラットフォーム診断
アプリケーション診断はWebアプリや、スマートフォンアプリの脆弱性を洗い出します。主な手法は以下の2種類です。
- ソースコードから脆弱性を検出する
- 動作している環境で悪意のある操作を実施する
プラットフォーム診断はシステムの基盤やネットワークなどインフラ面の脆弱性を洗い出します。主な確認項目は以下の通りです。
- 各機器の設定
- パッチ適用状況
- ネットワークスキャンの結果
- アクセス権限の適切さ
ペネトレーションテストと脆弱性診断のどちらを実施すべきか
ペネトレーションテストと脆弱性診断はそれぞれ異なる目的で実施されるテストです。自社ではどちらを利用すべきか判断するために、判断基準を確認しておきましょう。
ペネトレーションテストを実施すべき企業の特徴
ペネトレーションテストを実施すべき企業の特徴として以下があります。
- 攻撃者目線でセキュリティの評価をしたい
- セキュリティ強化をすべきポイントを知りたい
- 実際の攻撃を受けた場合の被害想定をしたい
- 攻撃を受けた場合に自社がどの程度対応できるのか知りたい
- 業界的に高いセキュリティが求められる
ペネトレーションテストは脆弱性を見つけ出し、攻撃を仕掛けるテストです。攻撃者目線でのセキュリティ評価が可能なことが脆弱性診断との違いになります。攻撃者はどういったポイントを狙ってくるのか、を知っておくことで重点的に対策すべきポイントの把握が可能です。
また実際に攻撃を受けた場合の被害や自社の対応は攻撃をされなければ分かりません。机上の計算のみで終わらせずに、実践してみたい企業はペネトレーションテストの実施を検討すべきです。
情報の漏えいや改ざんが国民の安全を脅かすことになる企業も、ペネトレーションテストを受けるべきです。例として機密情報を多く扱う企業や、国全体のインフラを管轄する企業などが挙げられます。これらの企業は常に攻撃者のターゲットとして狙われやすいため、ペネトレーションテストによる実践や被害想定が大切です。
脆弱性診断を実施すべき企業の特徴
脆弱性診断を実施すべき企業の特徴として以下があります。
- 第三者目線のセキュリティ評価をしたい
- リリース予定、アップデート後のシステムに問題がないか確認したい
脆弱性診断は脆弱性を洗い出し、セキュリティ強化につなげることが目的です。社内のセキュリティ評価だけでなく、第三者目線でのセキュリティ評価を行うことで、思わぬ脆弱性が見つかることがあります。
特にリリース予定やアップデート後のシステムに脆弱性がないことは重要になります。安心してユーザーが使えるサービスとして環境を整えることが提供者の義務だからです。リリース前やアップデート後には脆弱性診断を行い、必要に応じてセキュリティ強化を実施しましょう。
ペネトレーションテストと脆弱性診断のそれぞれの実施手順|検査手順を理解しよう
ペネトレーションテストと脆弱性診断の一般的な実施手順を解説します。自社で実施する場合でも、外注する場合でも手順を把握しておくことで、前後の対応がしやすくなります。
ペネトレーションテストのやり方や流れ
ペネトレーションテストの流れは以下の通りです。
- 準備
a. 実施対象システムの決定
b. 攻撃シナリオの計画 - 実施
a. シナリオに基づいた攻撃の実施 - 評価
a. 攻撃した結果をもとに報告書の作成
b. 事後対応の計画
ペネトレーションテストの準備段階では対象システムの決定をします。対象システムの脆弱性を探り、どういった攻撃を仕掛けるのかを計画する段階です。
計画時には先述したブラックボックステスト、ホワイトボックステストのどちらで攻撃を仕掛けるのかを決めます。また対象システムに対して外部からアクセスできない内部的な攻撃をするのか、あるいは公開されている外部から攻撃をするのか、を決めることも攻撃計画の範囲です。
準備が完了したら実際の攻撃を行い、実際に脆弱性を突いて侵入できるのかを検証します。攻撃が成功した場合には擬似的な被害を起こす場合もあるでしょう。
評価段階では攻撃の結果から報告書を作成します。報告書を受け取った企業は内容をもとに、今後のセキュリティ強化に向けて計画する段階です。次のセキュリティ強化施策につなげることで一連のペネトレーションテストが完了します。
脆弱性診断のやり方や流れ
脆弱性診断の流れは以下の通りです。
- 準備
a. 実施対象システムの決定 - 実施
a. 擬似攻撃を行ってシステム側の対応を確認 - 評価
a. 実施結果をもとに報告書の作成
b. 事後対応の計画
脆弱性診断の大まかな流れはペネトレーションテストと同じになります。大きく違う点は仕掛ける攻撃の準備や実施、その対応です。
脆弱性診断の場合は脆弱性を洗い出すことを目的とします。よってシステムを多面的に検査をする必要があるため、1つの脆弱性に対して侵入を試みてデータの改ざんを行うような本格的な攻撃はしません。脆弱性診断で行う擬似攻撃はあくまで脆弱性であることを確認するための攻撃です。
網羅的に攻撃を仕掛けることで、対象システムの脆弱性を洗い出し、報告書が作成されます。作成された報告書をもとに、今後のセキュリティ対策への提案をしてもらえます。提案事項に優先度をつけて順次セキュリティ強化を実施すべきです。
それぞれの検査ツール・サービスの選び方
ペネトレーションテストと脆弱性診断のどちらを利用すべきか判断できたら、自社で実施するか、外注するのか選びます。当項では外注時のサービスや自社で利用できるツールを選択する際のポイントを解説します。
ペネトレーションテストサービスを選ぶ際のポイント
ペネトレーションテストサービスを選ぶ際のポイントとして以下があります。
- 担当者の知識や実績
- テスト手法や範囲、報告内容
- アフターフォロー
ペネトレーションテストは実際に攻撃を仕掛けるテストです。よって担当者のスキルや専門性、経験によって結果が異なります。担当者のスキルレベルが高いほど、より実践的なテストが可能です。実践的なテストを受けることで、社内システムの具体的な強化ポイントが見つけやすくなるので、複数社を検討するときは担当者のスキルレベルを比較しましょう。
またペネトレーションテストのテスト手法や範囲、報告内容も重要です。実施対象としたいシステムが対象外の場合、サービスを利用する意味がありません。見積もりや相談の段階で、実施対象システムへのテストが対応可能か確認しましょう。
アフターフォローは結果報告内容からセキュリティ強化の提案やサポートをしてくれるかどうかです。アフターフォローが充実しているサービスを選択することで、自社のセキュリティ強化につなげやすくなります。アフターフォローの点を考えても、担当者のスキルレベルが重要なことが分かるでしょう。
脆弱性診断ツールを選ぶ際のポイント
脆弱性診断ツールは自社で脆弱性診断を実施するために用いるツールです。脆弱性診断ツールを選ぶ場合は以下を確認しましょう。
- 対応範囲
- 使い勝手
- 料金
- サポート
脆弱性診断ツールが実施対象としたいシステムに利用できるか確認しましょう。また脆弱性診断ツールの場合は、社内システムが増えると対応できないものが出てくる可能性があります。対応範囲を確認しておき、極力多くのシステムに使えるものを選びましょう。また確認範囲が最新の脆弱性にも対応しているか、も注意すべきポイントです。
自社でツールを用いて脆弱性診断を実施する想定のため、使い勝手や料金も重要です。使いにくいもの、あまりに料金が高いものを選ぶと費用対効果が悪くなる可能性があります。費用対効果から「外注した方がよい」と考えるラインのものを選ばないことがおすすめです。中には無料で使えるものもあります。
契約時にサポートで、使い方の説明やセキュリティ強化のアドバイスをもらえるツールを選ぶこともおすすめです。脆弱性診断ツールを用いる最終目的は「自社のセキュリティ強化」です。サポートが充実しているツールであれば、目的を果たしやすくなります。
まとめ
ペネトレーションテストと脆弱性診断は目的や手法が違うセキュリティ対策の取り組みです。どちらを実施すべきか当記事を読んで判断してください。
株式会社三和コムテックでは脆弱性診断サービスを多数取り揃えています。またペネトレーションテストの対応も承っております。弊社はセキュリティサービスにおいて以下の実績を持つ企業です。
- セキュリティ診断3,000社以上
- PCI DSS準拠診断300社以上
- クラウド型診断1,500万回以上
セキュリティ強化に興味をお持ちの担当者様は下記リンクから詳細をご覧ください。
- トピックス:
- セキュリティ