Webサイトやシステムの安全性を確保するうえで、定期的な「脆弱性診断」は欠かせません。
しかし現場では、「何を準備すればいいのか」「外部に依頼する際にどこまで必要なのか」など、実務上の不安が多いのも事実です。

この記事では、脆弱性診断のやり方を6つのステップで解説します。
単なる手順ではなく、「なぜ必要か」「どう活かすか」という視点で整理したので、実務担当者の方にもおすすめです。

この記事を監修した人

増井敏克

増井敏克

増井技術士事務所 代表

技術士(情報工学部門)、テクニカルエンジニア(ネットワーク、情報セキュリティ)、その他情報処理技術者試験にも多数合格。また、ビジネス数学検定1級に合格し、公益財団法人日本数学検定協会認定トレーナーとしても活動。「ビジネス」×「数学」×「IT」を組み合わせ、コンピュータを「正しく」「効率よく」使うためのスキルアップ支援や、各種ソフトウェアの開発を行っている。著書に『IT用語図鑑』『図解まるわかり セキュリティのしくみ』『どうしてこうなった?セキュリティの笑えないミスとその対策51』『「技術書」の読書術』『実務で役立つ ログの教科書』など。

ステップ1:診断の目的を明確にする

最初に行うべきは、「なぜ診断を行うのか」を明確にすることです。
目的を定義せずに始めると、診断範囲・レポート内容・改善施策の方向性がばらつき、効果が薄れてしまいます。以下の表は目的別の例です。

目的 具体的な内容
予防 攻撃を未然に防ぐためのリスク洗い出し
品質保証 新規リリース・改修時の安全性チェック
法令遵守 個人情報保護法・ISMSなどの要件対応
顧客・取引先対応 セキュリティ監査・調達要件のクリア

脆弱性診断は「守るための診断」か「証明するための診断」か、で目的が異なります。

リスク低減(守るための診断)を目的とする場合は、実行性(対策の実施しやすさ)を重視し、再診断や修正状況の追跡を義務化することが考えられます。
対外説明(証明するための診断)を目的とする場合は、証拠性(説明責任を果たすための根拠)を重視し、ログや証跡の保持、SLA要件の明文化などが考えられます。
最初に目的を明確にしておくことで、診断全体の方向性がぶれず、成果につながりやすくなります。

ステップ2:診断の対象と範囲を決める

脆弱性診断を効果的に行うためには、まず「どのシステムを、どの範囲まで」診断するのかを明確にすることが重要です。Webサイト全体を対象にするのか、特定のアプリケーションやAPIだけを検証するのかによって、必要な診断内容や準備が大きく変わります。

対象を整理する際は、次のような観点で洗い出しておきましょう。

  • 外部公開システム(Webサイト、ログインページ、クラウド環境など)
  • 社内システム(管理ツール、イントラネット、VPN接続など)
  • 連携システム(API、SaaS、外部サービス連携部分など)

最近では、1種類の診断ではリスクを網羅しきれないため、複数の診断を組み合わせて実施する「ハイブリッド診断」が主流になっています。具体的には、Webアプリには「Webアプリ診断」、サーバー設定には「ネットワーク診断」、クラウド環境には「クラウド構成診断」を組み合わせる形です。診断結果を横断的に整理することで優先的に対策すべき領域が明確になり、コストの最適化にもつながります。

参照元: IPA:情報セキュリティサービス基準適合サービスリスト

診断対象ごとに詳しく知りたい方は、以下の記事もあわせてご覧ください。
Webアプリケーションの脆弱性診断の種類は?
プラットフォーム診断とは? 実施しないリスクとは?
スマートフォンアプリも脆弱性診断は必要?

ステップ3:診断方法を選ぶ(自社実施 or 外部委託)

脆弱性診断の進め方は、大きく「自社で行う」か「外部に依頼する」かに分かれます。
それぞれの特徴を理解して選ぶことが、最適な成果を得る第一歩です。

実施方法 メリット デメリット
自社実施 ・柔軟な実施スケジュール
・継続的なコスト削減
・社内ノウハウの蓄積
・担当者の工数・スキル確保
・深い検証の限界
・客観性の不足
外部委託 ・専門家による高精度診断
・第三者視点での信頼性
・改善サポート・再診断対応
・案件ごとの費用発生
・調整に時間を要する
・社内知見が残りにくい

多くの企業では、「自社+外部」の併用運用を採用しています。
日常的な診断は自社で回し、リリース前や重要システムは外部専門家に依頼することで、コスト・精度・スピードをバランスよく確保できます。

自社で運用する場合は、週次での自動スキャン、月次での脆弱性レビューなどの体制を構築する必要があります。

信頼できる診断サービス事業者を選ぶ際は、公的機関である情報処理推進機構(IPA)が公開している「情報セキュリティサービス基準適合サービスリスト」を参考にするとよいでしょう。このリスト掲載企業は、診断品質や体制、実績などが一定の基準を満たしており、初めて依頼する場合でも安心して選定できる指標になります。

ベンダーの選び方はこちらで詳しく解説しています。

詳細はこちら

masuipeo

監修:増井さん

価格だけで判断せず、診断後にリスクをどのように低減させるかに注目してください。診断後の支援体制や再診断の対応範囲を基準に選ぶことが重要です。報告書の形式や内容は一定の基準に沿って作成されるため、違いが出るのはその後のサポートです。
特に、自社で継続的に対策できる体制がない場合は、修正方針のアドバイスや再診断を通じて改善を支援してくれるベンダーを選ぶことで、診断結果を“実際のリスク低減”につなげやすくなります。

ステップ4:診断準備を整える

診断をスムーズに進めるためには、事前準備がとても重要です。
準備不足のまま始めてしまうと、思わぬトラブルや手戻りが発生することがあります。
特に、診断範囲の曖昧さ環境設定の不備はよくある失敗例です。

まずは、次の3点をしっかり整理しておきましょう。

1. 目的と範囲の最終確認

どのシステム・URL・環境を診断するのかを明確にします。
公開前のテスト環境を対象にするのか、運用中の本番環境を含めるのかも判断しましょう。

2. 診断用アカウントやアクセス情報の準備

ログインが必要な画面を診断する場合は、テスト用のアカウントや認証情報を用意します。
アクセス制御やVPN接続がある場合は、事前に設定を確認しておくことが大切です。

3. 関係者への情報共有とスケジュール調整

診断中はサーバーやアプリに一時的な負荷がかかるため、開発・運用チームに必ず共有しておきましょう。
他の作業と重なると影響が出る場合があるため、スケジュールのすり合わせも欠かせません。

準備段階で情報共有が不十分だと、診断精度が落ちたり、再調整が必要になったりするケースもあります。特に「権限不足で検証ができない」「本番しか環境がない」「障害発生時に復旧できない」といったトラブルは、自社実施・外部委託どちらのケースでも発生しやすいポイントです。

診断担当者(社内/ベンダー)がスムーズに作業できるよう、対象範囲・環境・権限を事前に明確化しておくことが重要です。

ステップ5:診断の実施と報告書の読み解き方

診断準備が整ったら、いよいよ実施フェーズです。
診断では、ツールによる自動スキャンと、専門家による手動確認が行われます。
診断後には「報告書」が発行され、発見された脆弱性とその対応策がまとめられています。

診断の流れ(基本ステップ)

1. 診断の実行

設定内容を確認したうえで、対象システムに対してスキャンを行います。
自動診断ツールは大量のパターンを高速に確認でき、人手による診断では気付かない設計上の問題も補えます。

2. 検出結果の確認・整理

診断ツールの結果には、誤検知(実際には問題のない箇所)が含まれる場合があります。
専門家は結果を精査し、リスクの有無を確認したうえで最終報告書をまとめます。

3. 報告会・説明

報告書の内容をもとに、診断ベンダーから結果説明が行われます。
技術的な内容だけでなく、「どのリスクから対応すべきか」「修正の優先度」などもアドバイスされます。

報告書の見方

報告書には専門的な表現も多く使われますが、次の3点を意識すれば十分理解できます。

チェック項目 意味 どう活かすか
深刻度
(Severity)
脆弱性の危険度。Critical/High/Medium/Lowなどで分類 優先的に対応すべき項目を判断する
影響範囲
(Impact)
攻撃を受けた場合に影響が出る範囲 経営層や他部門へ説明する際の根拠にする
修正推奨策
(Recommendation)
どのように修正すればよいかの提案 開発チームが具体的な修正方針を立てる

報告書を読んだら、まず「どの脆弱性をいつまでに対応するか」を決めましょう。
その際、リスクの高いもの(Critical/High)から優先的に対応するのが基本です。

masuipeo

監修:増井さん

報告書の活用には運用ルールが必要です。具体的には、「危険度の高いものから順に修正担当と期限を設定する」「修正に対する検証基準を明記する」「再診断の合格基準を定義する」といったことを事前に社内ルールとして決めておくと、診断結果を改善につなげられます。

ステップ6:改善と再診断フェーズへ

診断後に報告書を受け取ったら、次は修正と再診断(リテスト)です。
診断の目的は「脆弱性を見つけること」ではなく、「直して安全にすること」です。

修正の進め方

まずは報告書で指摘された問題を確認し、リスクの高いものから順に対応を始めましょう。

  • 優先順位を決める:深刻度の高い項目(Critical/High)から対応。
  • 開発チームと共有する:どの機能・画面に影響があるかを明確に。
  • 修正後の動作確認:機能が壊れていないか、再テストを忘れずに。

再診断の実施

修正後は、可能であれば再診断(リテスト)を実施しましょう。
特に重要システムや高リスク項目の場合は、外部機関による再診断を推奨します。

改善状況を見える化する

修正・再診断を行った後は、改善の成果を可視化してチームで共有することが大切です。
見える化することで、進捗が明確になり、次のアクションにもつながります。

主な見える化の方法

  • 修正対応率を数値で管理
    「報告された脆弱性のうち、何%が修正完了しているか」をグラフ化。
    → チーム全体の対応スピードやリソース配分を見直す指標になります。
  • 再診断結果を比較して共有
    1回目と2回目の診断結果を並べて「どれだけ改善したか」を視覚化。
    → 経営層や関係部門への説明資料としても有効です。
  • 再発しやすいパターンを記録
    同じタイプの脆弱性が繰り返し発生している場合は、開発ルールや教育の見直しが必要です。
    → 「人やチームの癖」を分析することで、根本的な再発防止につながります。

継続運用のコツ

脆弱性対策は「1回やって終わり」ではなく、続けるしくみをつくることが大切です。
そのためには、次の3つを意識しましょう。

  • 定期ミーティングで進捗を共有する
    診断結果や修正の状況をチームで報告する時間を設けましょう。
     小さな振り返りを積み重ねることで、課題が早めに見つかります。
  • 共通の管理ツールやダッシュボードを使う
    経営層・開発・運用など、関係者全員が同じ画面で状況を確認できるようにします。
    「誰がどこまで進めているか」が一目でわかると、対応がスムーズになります。
  • わかりやすい指標(KPI)を決める
    例えば、「修正が完了した割合」「平均修復時間(MTTR)」「再発率」「再診断を終えた割合」などを定期的に確認しましょう。数字で見えると、やるべきことが明確になり、改善のモチベーションも上がります。
masuipeo

監修:増井さん

診断は「発見」して終わりでは意味がなく、組織の安全を保つために継続して実施しなければなりません。
攻撃者は常に新しい脆弱性を狙っているため、発見された脆弱性を確実に修正し、再発を防ぐしくみをつくることが大切です。1年に1回でも継続して診断を行い、自社が今どのレベルにいるかを把握し続けることが、防御力を維持する唯一の方法です。

診断を“習慣化”してこそ本当の防御になる

脆弱性診断は、単なるチェックリストではなく「企業の守りの文化」をつくるしくみです。一度の診断で終わらせず、継続して改善を重ねることで、システムの信頼性を保ち続けることができます。

脆弱性診断を効果的にする3つの実践ポイント

  • 定期診断を年次計画に組み込み、習慣化する
  • 診断結果を社内教育や経営判断に活用する
  • 外部専門家との連携を通じて、防御レベルを定期的に検証する

まずは自社の現状を知ることから

どんなに優れたしくみも、「今、何が危険なのか」を知らなければ改善は始まりません。
ユービーセキュアでは、無料の脆弱性診断トライアルを通じて、自社システムのリスクを“見える化”するお手伝いをしています。

詳細はこちら

「まずは現状を知りたい」「どの範囲を診断すればいいかわからない」という方も、お気軽にご相談ください。

【無料】資料ダウンロード

「何から始めればいい?」がゼロになる!セキュリティ対策スタートガイド

セキュリティ担当を任されたけど、何から手をつけていいかわからない。そんな悩みに応える、初心者向けスタートガイドです。 基本的な考え方から具体的な対策まで、順を追って分かりやすく整理しています。

セキュリティ対策スタートガイド
  • セキュリティの基本的な考え方と全体像
  • 最初に取り組むべき具体的な対策
  • 「まずこれだけは」の厳選対策を紹介