ソフトウェア セキュリティ 公開日 2026.04.04 更新日 2026.10.26

脆弱性診断とは?ペネトレーションテストとの違いも含めてわかりやすく解説

脆弱性診断とは何かを、ペネトレーションテストとの違い、どんな場面で依頼されるのか、実務でどこまでやるのかまで含めて初心者向けに整理した記事です。

目次(42項目)

先に要点

  • 脆弱性診断 は、システムやアプリにある弱点を見つけて、危険度や対策を整理するための点検です。
  • ペネトレーションテスト は、実際にどこまで侵害できるかを、許可された範囲で踏み込んで確認する検証です。
  • ざっくり言うと、脆弱性診断は 「弱点を洗い出す」、ペネトレーションテストは 「その弱点で本当にどう破られるかを見る」 という違いがあります。
  • 実務では、全部にペンテストをやるより、通常は脆弱性診断を土台にして、必要な対象だけペネトレーションテストを行う方が現実的です。

脆弱性診断 と ペネトレーションテスト は、どちらもセキュリティの文脈でよく出てきます。
ただ、実際には同じ意味ではありませんし、依頼するときの前提も、見たいものも少し違います。

この記事では、脆弱性診断 と ペネトレーションテスト の違いを、初心者向けに整理します。
2026年4月時点で、NIST SP 800-115 と OWASP Web Security Testing Guide を確認しながらまとめています。


脆弱性診断とは?

脆弱性診断 は、システムやアプリ、API、サーバー、ネットワーク機器などに 弱点がないか を調べて、危険度や修正優先度を整理する作業です。

初心者向けにかなりざっくり言うと、壊される前に、壊れやすい場所を点検すること です。

実務では、次のような対象で行われます。

アプリ

Webアプリ・API

Webアプリ、API。

システム

社内システム・公開サーバー

社内システム、公開サーバー。

基盤

クラウド設定・ネットワーク機器

クラウド設定、ネットワーク機器。

診断結果に並ぶ指摘の例

SQLインジェクションの可能性がある、認証が弱い、古いミドルウェアが残っている、不要なポートが開いている のような指摘が並ぶことが多いです。


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

ペネトレーションテスト は、見つかった弱点や想定シナリオをもとに、実際にどこまで侵害できるか を許可された範囲で検証する作業です。

つまり、弱点があるか を見るだけではなく、その弱点で本当にどこまで行けるのか を見るのが特徴です。

たとえば、次のように、影響範囲まで確かめる方向へ進みます。

ペネトレーションテストで確かめる到達範囲の例
  1. 1

    一般ユーザー権限 → 管理者権限

    一般ユーザー権限から管理者権限まで上がれるか

  2. 2

    Webアプリの弱点 → 社内システム

    Webアプリの弱点から社内システムまで届くか

  3. 3

    認証の穴 → 顧客情報

    認証の穴から顧客情報まで見えてしまうか

健康診断と精密検査にたとえると

初心者向けには、脆弱性診断が健康診断 なら、ペネトレーションテストは 実際にその弱点でどれだけ危険かを確認する精密検査 と考えると分かりやすいです。


何が違うのか

ここが一番大事です。

横=範囲 縦=踏み込みの深さ 脆弱性診断 広く洗い出す(弱点の棚卸し) ペン テスト 重点対象に 深く踏み込む (本当にどう 破られるかの確認) 診断で広く見て、ペンテストで深く見る
観点 脆弱性診断 ペネトレーションテスト
目的 弱点を見つける 実際の侵害可能性を確かめる
主な成果物 脆弱性一覧、危険度、対策案 侵害シナリオ、到達範囲、事業影響
範囲 広く洗い出す 重点対象に深く踏み込む
向いている場面 定期点検、改修前後、公開前確認 重要システム、侵害シナリオ確認、経営判断
コスト感 比較的抑えやすい 時間も工数も重くなりやすい

要するに、脆弱性診断は 弱点の棚卸し、ペネトレーションテストは 本当にどう破られるかの確認 です。


どちらを先にやるべきか

通常は、脆弱性診断を先に考える方が自然です。

理由は単純で、弱点の全体像が見えていない段階で、いきなり深い侵害シナリオに入ると、費用も時間もかかりやすいからです。

実務では、こんな流れが多いです。

実務でよくある進め方

  1. 1
    まず脆弱性診断で広く確認する

    弱点の全体像をつかむ。

  2. 2
    重要な弱点や経路を絞る

    深く見る価値がある対象を決める。

  3. 3
    必要な対象だけペネトレーションテストを行う

    絞った対象で、実際にどこまで侵害できるかを確かめる。

全部をペネトレーションテストでやる、というより、診断で広く見て、ペンテストで深く見る と分けた方が現実的です。


どんな場面で脆弱性診断が必要か

脆弱性診断が必要になりやすいのは、次のような場面です。

場面1

1. 公開前のWebアプリやAPI

外部公開前に、認証、入力値、権限、エラーメッセージ、設定ミスなどを一通り見たいケースです。ここはかなり典型です。

場面2

2. 改修後や大きなリリース前

ログインまわり、権限、決済、管理機能のように、重要な部分を触った直後は確認した方が安全です。

場面3

3. 定期点検

1回見て終わりではなく、四半期や半年ごとに見るケースもあります。システムは変わりますし、ライブラリや設定の状況も変わるからです。

場面4

4. 取引先や監査対応

業界や契約によっては、定期的な診断報告が求められることもあります。


どんな場面でペネトレーションテストが必要か

一方で、ペネトレーションテストは 重要度が高い対象 や 侵害シナリオを経営判断したい対象 に向いています。

場面1

1. 重要情報を扱うシステム

顧客情報、決済情報、機密データ、社内基幹システムなどです。穴があるか だけでなく、破られたらどこまで行くか を見たいときに意味があります。

場面2

2. 実際の攻撃経路を確認したいとき

たとえば、公開Webアプリから社内環境へ届くのか、一般ユーザー権限から管理者権限まで上がれるのか、横移動できるのか、のような確認です。

場面3

3. 重要な投資判断の前

ゼロトラスト、認証基盤、公開構成、ネットワーク分離に投資する前に、今の守りでどこまで耐えられるか を見たい場面でも使われます。


実務ではどこまでやる必要があるのか

ここは、かなり現実的に考えた方がいいです。

まず最低限やるべきこと

最低限としては、外部公開しているシステムや重要な業務システムに対して、定期的な脆弱性診断を入れることです。

優先度が高い

入口と権限

ログイン、権限管理、管理画面。

優先度が高い

受け付ける場所

ファイルアップロード、API。

優先度が高い

外に見えている場所

外部公開サーバー。

特に、このような場所は優先度が高いです。

全部にペンテストはやりすぎになりやすい

全部のシステムに毎回やるのは重くなりがち

ペネトレーションテストは価値がありますが、全部のシステムに毎回やるのは重くなりがちです。現実には、重要システムや境界になっている部分に絞る方が多いです。

改修まで含めて考えないと意味が薄い

診断やテストは、報告書をもらって終わりではありません。
実務ではむしろ、次のサイクルまで回して初めて意味が出ます。

報告書のあとに回すこと
  1. 1

    どこをいつまでに直すか

    直す場所と期限を決める。

  2. 2

    緊急度はどれくらいか

    急いで直すものを見極める。

  3. 3

    再確認はどうするか

    直したあとの確かめ方を決める。


初心者が誤解しやすいポイント

誤解1

脆弱性診断は「自動スキャンだけ」ではない

自動ツールはかなり重要ですが、それだけで全部が分かるわけではありません。認可不備や業務ロジックの問題は、人の目で見ないと抜けやすいことがあります。

誤解2

ペネトレーションテストは「派手なハッキングショー」ではない

本来は、許可された範囲で、事前に決めた対象と条件の中で行う検証です。勝手に広く壊してよいものではありません。

誤解3

どちらも万能ではない

診断やテストをしたから安全、ではありません。ログ監視、パッチ運用、認証、権限、バックアップなどとセットで考える必要があります。


実務で依頼するときに決めておきたいこと

外部へ依頼するなら、最低でもこのあたりは決めておきたいです。

どこを

対象と環境

対象範囲、本番か検証環境か、認証ありかなし。

いつ・何を

時間帯と重点

実施可能な時間帯、重点的に見たい機能。

そのあと

報告と再確認

報告書の粒度、改修後の再確認有無。

ここが曖昧だと食い違いが起きる

ここが曖昧だと、思っていたものと違う が起きやすいです。


脆弱性診断とペネトレーションテストに関するよくある質問

Q. 脆弱性診断とペネトレーションテストはどちらを先にやるべきですか?

A. 一般的には脆弱性診断が先です。広く弱点を洗い出して優先度を整理してから、特に重要な対象だけペネトレーションテストで深く確認する流れが現実的です。

Q. 費用感はどれくらい違いますか?

A. 対象の数や範囲、手作業の割合で大きく変わるため、複数社から見積もりを取って比べるのが確実です。一般にペネトレーションテストは侵害シナリオを人手で深く追うぶん期間と工数がかかり、対象範囲が広がるほど差は開きます。

Q. クラウドサービスの脆弱性診断は自由にやって良いですか?

A. 自由ではありません。主要なクラウドでは、対象として認められたサービスなら事前申請なしで診断できるようになっていますが、各社のポリシー(AWS のペネトレーションテストポリシー、Microsoft の Penetration Testing Rules of Engagement など)を守る必要があり、DoS のような負荷をかける試験は禁止されています。許可外の診断は利用規約違反になる可能性があるので、実施前に必ず公式ページを確認します。

Q. 自動スキャンツールだけで十分ですか?

A. 既知の脆弱性、設定不備、明らかな欠陥には強いですが、業務ロジックの不備や認可設計のミスは見つけにくいです。重要なシステムなら人手による診断と組み合わせる方が安全です。

Q. 内部の担当者だけで実施できますか?

A. 規模が小さく、対象が限定的なら可能です。ただし、外部目線で見ないと気づけない指摘もあるので、年1回など定期的に外部診断を入れる組織が多いです。

Q. 診断結果の報告書は何を見れば良いですか?

A. 指摘の深刻度(CVSSスコア)、再現手順、想定影響、修正案、再診のしやすさ を見ます。深刻度だけで判断せず、業務影響と直しやすさ を掛け合わせて優先度を決めるのが実務的です。

Q. バグバウンティ制度と脆弱性診断は何が違いますか?

A. バグバウンティは外部の研究者から自由に報告を受ける 常時受付 の仕組み、脆弱性診断は契約期間と範囲を決めて行う スポット型 です。両立する企業も増えています。


まとめ

脆弱性診断 は、弱点を見つけて整理するための点検です。
ペネトレーションテスト は、実際にどこまで侵害できるかを確認するための、より踏み込んだ検証です。

実務では、まず脆弱性診断で広く見て、重要な対象だけペネトレーションテストで深く見る、という流れがかなり現実的です。
どちらか片方だけを神格化するより、目的に合わせて使い分ける方がうまくいきます。

ホワイトハッカーの仕事とのつながりまで見たいなら、ホワイトハッカーとは?仕事内容・なるまでの流れ・年収の見方をわかりやすく解説 もあわせて読むとつながりやすいです。
社内システム側でどこまで守るべきかを整理したいなら、社内の業務システムに必要なセキュリティ対策は?どこまでやるべきかを整理 も相性がよいです。


参考リンク

あとで見返すならここで保存

読み終わったあとに残しておきたい記事は、お気に入りからまとめて辿れます。