脆弱性診断の契約で注意すべき7つのポイント|トラブルを未然に防ぐ方法
脆弱性診断サービスの契約時、「診断範囲が曖昧で追加費用が発生した」「報告書の内容が薄く、具体的な対策が分からなかった」といったトラブルは珍しくありません。実際、契約書の細部を確認せずに契約してしまい、後悔する企業は少なくないのが現状です。
脆弱性診断サービスの契約時、「診断範囲が曖昧で追加費用が発生した」「報告書の内容が薄く、具体的な対策が分からなかった」といったトラブルは珍しくありません。実際、契約書の細部を確認せずに契約してしまい、後悔する企業は少なくないのが現状です。
特に中小企業では、初めての脆弱性診断導入時に「価格の安さ」だけで業者を選んでしまい、期待した診断結果が得られないケースが多く見られます。本記事では、セキュリティ診断の契約前に必ず確認すべき7つのポイントと、トラブルを未然に防ぐ具体的な方法を解説します。
脆弱性診断の契約前に理解すべき基礎知識
契約のポイントを確認する前に、まず脆弱性診断サービスの基本的な内容と、よくある契約トラブルのパターンを理解しておくことが重要です。
脆弱性診断とは何か
脆弱性診断とは、Webアプリケーションやネットワークシステムに存在するセキュリティ上の弱点(脆弱性)を専門的な手法で発見し、報告するサービスです。診断により、サイバー攻撃を受ける前に脆弱性を修正することで、情報漏洩や不正アクセスのリスクを低減できます。
診断の主な目的は以下の通りです:
- 既知の脆弱性(SQLインジェクション、XSSなど)の検出
- システム設定の不備やセキュリティポリシー違反の確認
- コンプライアンス要件(PCI DSS、個人情報保護法など)への対応
- 第三者による客観的なセキュリティ評価の取得
診断の種類と契約形態
脆弱性診断には大きく分けてツール診断と手動診断の2種類があり、契約内容によって診断の精度や費用が大きく異なります。
**ツール診断(自動診断)**は、専用ソフトウェアを使用して既知の脆弱性を網羅的にチェックする方法です。比較的低コストで実施できる一方、複雑なロジックを持つアプリケーションや、最新の攻撃手法には対応できない場合があります。診断費用の目安は数万円から数十万円程度です。
**手動診断(ペネトレーションテスト)**は、セキュリティエンジニアが実際の攻撃者の視点でシステムを調査する方法です。ツールでは検出できない論理的な脆弱性や、複数の脆弱性を組み合わせた攻撃パターンまで発見できます。費用は数十万円から数百万円と高額ですが、より実践的なセキュリティ評価が可能です。
| 診断種別 | 費用目安 | 診断期間 | 検出精度 |
|---|---|---|---|
| ツール診断 | 数万円~数十万円 | 1-3日 | 既知の脆弱性に強い |
| 手動診断 | 数十万円~数百万円 | 1-2週間 | 複雑な脆弱性も検出 |
| ツール+手動 | 数十万円~ | 1-3週間 | 最も網羅的 |
契約トラブルの実態
脆弱性診断の契約では、以下のようなトラブルが実際に発生しています。
事例1:診断範囲の齟齬による追加費用
ある企業では、「Webサイト全体の診断」として契約したつもりが、契約書には「トップページと主要5ページのみ」と記載されていました。全ページの診断を依頼したところ、追加で50万円の請求が発生し、予算超過となってしまいました。
事例2:報告書の内容不足
別の企業では、診断完了後に受け取った報告書が、検出された脆弱性の一覧のみで、具体的な修正方法や優先順位の説明がありませんでした。社内エンジニアが対応方法を自力で調査する必要があり、想定以上の工数がかかってしまいました。
事例3:診断による業務影響
診断実施時間の取り決めが不明確だったため、営業時間中に高負荷のテストが実行され、ECサイトのレスポンスが低下。顧客からのクレームと機会損失が発生しました。
これらのトラブルは、契約前の確認不足が原因です。次のセクションから、具体的なチェックポイントを見ていきましょう。
【ポイント1-3】診断範囲・実施方法に関する契約注意点
契約書で最も重要なのが、診断の対象範囲と実施方法の明確化です。ここが曖昧だと、期待した診断結果が得られなかったり、追加費用が発生したりするリスクが高まります。
診断対象範囲の明確化
診断範囲は具体的に記載されているか、必ず確認してください。曖昧な表現では、後からトラブルの原因になります。
確認すべき項目:
- 対象URL・IPアドレス:診断するWebサイトのURLや、ネットワーク診断の場合はIPアドレス範囲を明記
- 診断するページ数・機能数:「全ページ」ではなく、具体的な数値や機能名(例:ログイン機能、決済機能など)を記載
- 除外項目の明示:診断から除外するシステムや機能があれば明記(例:社内専用ページ、開発環境など)
- 診断項目の詳細:OWASP Top 10などの診断基準を明記(例:SQLインジェクション、XSS、認証の脆弱性など)
望ましい記載例:
「対象Webサイト:https://example.com/ 配下の全ページ(約50ページ)および、会員登録・ログイン・決済の各機能に対し、OWASP Top 10に準拠した診断を実施する。ただし、管理画面(/admin/配下)は除外する」
一方、「Webサイトの診断」といった曖昧な記載は避けるべきです。業者によって解釈が異なり、トラブルの原因となります。
診断手法の確認事項
診断がツール診断のみなのか、手動診断を含むのかは、診断品質に直結する重要なポイントです。契約書や見積書に明記されているか確認しましょう。
確認すべき内容:
- 使用する診断ツール名:自動診断ツールの種類と最新版の使用有無
- 手動診断の有無:セキュリティエンジニアによる手動検査が含まれるか
- 診断士の資格:CEH(認定ホワイトハッカー)やCISSP(情報セキュリティ専門家認定)などの資格保有者が対応するか
- 診断手順の説明:どのような流れで診断が進むのか、事前に説明を受ける
手動診断が含まれる場合、ツール診断では発見できない複雑な脆弱性(ビジネスロジックの欠陥、権限昇格の脆弱性など)も検出できるため、より高度なセキュリティ評価が可能になります。ただし、その分費用は高くなるため、予算と必要性のバランスを考慮してください。
診断期間と実施時間帯
診断の実施時期や時間帯は、業務への影響を最小限にするために重要です。特にECサイトや業務システムの場合、営業時間中の診断がサービスに影響を与える可能性があります。
契約書で確認すべき項目:
- 診断実施期間:具体的な日程(例:2024年5月1日~5月7日)
- 実施時間帯:営業時間内か、夜間・休日対応か(例:平日22時~翌朝6時)
- 高負荷テストの事前通知:サーバー負荷が高まる可能性がある診断については、事前に実施日時を通知してもらう
- 緊急時の連絡体制:診断中にシステム障害が発生した場合の連絡先と対応手順
営業時間外の診断を希望する場合、追加費用が発生するケースもあるため、見積もり段階で確認しておくことをおすすめします。また、診断による業務影響を最小限にするため、事前にシステム管理者と十分に調整を行い、バックアップやロールバック計画を準備しておくと安心です。
【ポイント4-5】成果物・報告に関する契約注意点
脆弱性診断の最終成果物である報告書の品質は、診断サービスの価値を大きく左右します。報告書の内容や形式が契約段階で明確になっていないと、期待した情報が得られないリスクがあります。
報告書の内容と粒度
報告書に何が含まれるのか、契約前に必ず確認してください。業者によって報告書の内容や詳細度に大きな差があります。
報告書に含まれるべき項目:
- 検出された脆弱性の一覧:脆弱性の名称、危険度(Critical、High、Medium、Lowなど)、影響範囲
- 脆弱性の詳細説明:どのような攻撃が可能か、実際の影響例
- 再現手順(PoC):技術者が脆弱性を再現・確認できる具体的な手順
- 修正方法の提案:推奨される対策方法、修正コード例
- 優先順位の明示:リスクの高い脆弱性から対応すべき順序
- 総合評価とサマリー:経営層向けの分かりやすい要約
IPA(情報処理推進機構)の「情報セキュリティサービス基準」では、診断報告書には「発見した脆弱性の内容、影響範囲、対策方法を明確に記載すること」が求められています。この基準を満たしているか、契約前に報告書のサンプルを提示してもらうことをおすすめします。
避けるべき報告書の例:
- 脆弱性の一覧のみで、修正方法の記載がない
- 専門用語だけで、非技術者には理解できない内容
- 危険度の評価基準が不明確
- 対策の優先順位が示されていない
報告書は、社内のエンジニアが実際に修正作業を進めるための重要な資料です。内容が不十分だと、追加で外部コンサルタントに依頼する必要が生じ、余計なコストがかかってしまいます。
再診断の条件と費用
脆弱性を修正した後、その修正が適切に行われたか確認する再診断の取り扱いは、契約時に必ず確認すべきポイントです。
確認すべき項目:
- 再診断の実施有無:初回診断の契約に再診断が含まれているか
- 再診断の範囲:全項目を再診断するのか、修正箇所のみか
- 再診断の実施期限:初回診断から何ヶ月以内に実施可能か(例:3ヶ月以内)
- 追加費用の有無:再診断に追加料金が発生するのか、無償で実施されるのか
- 再診断の回数制限:1回まで無償、2回目以降は有償など
多くの診断サービスでは、初回診断後の再診断が有償オプションとなっているケースが一般的です。修正後の確認まで含めた契約にするか、再診断は別途契約するか、予算と必要性に応じて判断してください。
再診断を実施しない場合、修正が不十分で脆弱性が残ったまま運用を続けるリスクがあります。特に、金融機関や個人情報を扱うシステムでは、コンプライアンス上も再診断の実施が推奨されています。
【ポイント6-7】責任範囲・費用に関する契約注意点
診断実施中のトラブルや、診断後に脆弱性が悪用された場合の責任範囲、さらには追加費用の発生条件について、契約書で明確にしておくことが重要です。
損害賠償責任の範囲
脆弱性診断は、システムに負荷をかけたり、一時的にサービスを停止させたりする可能性があります。万が一のトラブルに備え、責任範囲と免責事項を必ず確認してください。
確認すべき契約条項:
- 診断実施による損害の責任:診断中にシステム障害が発生した場合、業者がどこまで責任を負うか
- 損害賠償の上限額:賠償責任が発生する場合、上限金額が設定されているか(例:契約金額の範囲内)
- 免責事項の範囲:業者が責任を負わない条件(例:事前通知した高負荷テストによる一時的な性能低下)
- 診断後の脆弱性悪用:診断で発見できなかった脆弱性が悪用された場合の責任の所在
経済産業省の「情報セキュリティサービスに関するガイドライン」では、診断事業者は「契約で定めた診断範囲について誠実に診断を実施する責任を負うが、すべての脆弱性を検出することを保証するものではない」とされています。つまり、診断には限界があり、完全にリスクをゼロにすることはできません。
この点を理解した上で、契約書に以下のような記載があるか確認しましょう:
- 「本診断は、既知の攻撃手法に基づく脆弱性の検出を目的とし、すべての脆弱性の検出を保証するものではない」
- 「診断実施に起因してシステム障害が発生した場合、事業者は善良なる管理者の注意をもって対応するものとし、損害賠償責任は契約金額を上限とする」
免責事項が過度に広範囲な場合(「いかなる損害も責任を負わない」など)は、契約内容の見直しを求めることをおすすめします。
追加費用が発生する条件
見積もり時には想定されていなかった作業が発生し、追加費用を請求されるケースがあります。どのような場合に追加費用が発生するのか、契約前に明確にしておきましょう。
追加費用が発生する可能性がある項目:
- 診断範囲の追加:契約後に診断対象のページや機能が増えた場合
- 診断スケジュールの変更:顧客都合による診断日程の延期・再調整
- 再診断の実施:2回目以降の再診断(初回が無償の場合)
- 報告会・説明会の実施:報告書の内容を対面で説明する場合の追加費用
- 修正支援サービス:脆弱性の修正作業を診断業者に依頼する場合
- 緊急対応:契約期間外の問い合わせや、緊急の診断実施
これらの項目について、契約書に「追加費用が発生する場合は事前に見積もりを提示し、承認を得る」といった条項があるか確認してください。事前の合意なしに追加請求されるリスクを避けることができます。
想定外の追加費用を防ぐポイント:
- 診断範囲を契約書に具体的に明記する
- 追加作業が発生した場合の料金体系(時間単価など)を事前に確認する
- 診断開始前に、業者と最終的な診断範囲を再確認する
- 契約書に「追加費用は事前承認制」と明記する
契約時のチェックリストと選定基準
ここまで解説した7つのポイントをもとに、実際に契約を進める際のチェックリストと、複数の業者を比較する際の評価基準をご紹介します。
契約書で確認すべき項目一覧
以下のチェックリストを活用し、契約書の内容を漏れなく確認してください。不明点があれば、契約前に必ず業者に質問しましょう。
【7項目の契約チェックリスト】
- 診断対象範囲:URL、ページ数、機能、除外項目が具体的に記載されているか
- 診断手法:ツール診断のみか、手動診断が含まれるか明記されているか
- 診断期間・時間帯:実施日程、営業時間内外の区別、高負荷テストの事前通知があるか
- 報告書の内容:脆弱性の詳細、修正方法、優先順位が含まれるか、サンプルを確認したか
- 再診断の条件:無償・有償の別、実施期限、回数制限が明記されているか
- 責任範囲:損害賠償責任の上限、免責事項の範囲が明確か
- 追加費用:どのような場合に追加費用が発生するか、事前承認制が明記されているか
このチェックリストをもとに、契約書の内容を一つずつ確認してください。不明瞭な記載や、口頭での説明のみで契約書に記載がない項目があれば、書面での明記を求めることが重要です。
見積書の比較ポイント
複数の業者から見積もりを取る際、価格だけでなく以下の観点で比較することをおすすめします。
価格以外の評価基準:
- 診断範囲の詳細度:見積書に診断対象が具体的に記載されているか(曖昧な業者は避ける)
- 診断手法の明示:ツールと手動の割合、使用ツール名が記載されているか
- 診断士の資格・経験:CEH、CISSPなどの資格保有者が対応するか明記されているか
- 報告書の品質:サンプル報告書の提示があり、内容が充実しているか
- 再診断の取り扱い:初回診断に含まれるか、追加費用か
- アフターサポート:診断後の質問対応、修正支援の有無
- 実績と評判:同業種・同規模システムの診断実績があるか
| 評価項目 | A社 | B社 | C社 |
|---|---|---|---|
| 費用 | 30万円 | 50万円 | 80万円 |
| 診断手法 | ツールのみ | ツール+手動 | 手動中心 |
| 再診断 | 有償 | 1回無償 | 1回無償 |
| 報告書品質 | 簡易版 | 標準 | 詳細版 |
| 診断士資格 | 記載なし | CEH保有 | CISSP保有 |
このように、費用だけでなく診断の質や付加サービスを総合的に評価することで、自社に最適な業者を選定できます。最安値の業者が必ずしも最良とは限らず、診断品質とコストのバランスを考慮することが重要です。
契約後のトラブル対処法
万が一、契約後にトラブルが発生した場合の対応方法についても、事前に確認しておきましょう。
事前に確認すべき窓口・体制:
- 担当者の連絡先:診断プロジェクトの責任者とその連絡先(メール、電話)
- 緊急時の連絡体制:診断中にシステム障害が発生した場合の緊急連絡先
- 質問対応の範囲:診断後の質問対応期間(例:報告書提出後1ヶ月間)
- 紛争解決の方法:契約上のトラブルが発生した場合の解決手段(協議、調停など)
トラブル発生時の対応手順:
- まずは契約書の内容を再確認し、双方の認識の齟齬がないか確認する
- 業者の担当者に書面(メール)で問題点を明確に伝える
- 協議で解決しない場合、契約書に記載された紛争解決条項に従う
- 必要に応じて、第三者機関(情報処理推進機構など)に相談する
トラブルを未然に防ぐには、契約前の確認が最も重要ですが、万が一に備えて対応手順を知っておくことも大切です。
まとめ
この記事では、脆弱性診断の契約時に注意すべき7つのポイントを解説しました。重要なポイントは以下の通りです:
- 診断範囲を具体的に明記する:曖昧な表現は避け、対象URL、ページ数、機能を詳細に記載する
- 診断手法を確認する:ツール診断のみか、手動診断が含まれるかを契約書で明確にする
- 診断期間と実施時間帯を調整する:業務への影響を最小限にするため、営業時間外の対応も検討する
- 報告書の内容を事前に確認する:サンプルを見て、修正方法や優先順位が含まれるか確認する
- 再診断の条件を明確にする:無償・有償の別、実施期限、回数制限を契約書に記載する
- 責任範囲と免責事項を確認する:損害賠償責任の上限と、業者が責任を負わない範囲を把握する
- 追加費用の発生条件を明記する:想定外の請求を避けるため、事前承認制を契約書に盛り込む
次のステップとしては、複数の業者から見積もりを取り、このチェックリストをもとに契約内容を比較することをおすすめします。不明点があれば遠慮せず業者に質問し、納得した上で契約を進めてください。適切な契約により、トラブルのない脆弱性診断を実現できます。
関連記事
脆弱性診断で相見積もりを取る正しい方法|3社比較で最適な業者を選ぶ
脆弱性診断の発注を検討する際、「複数の業者から見積もりを取ったものの、どう比較すればいいかわからない」という悩みを抱えていませんか。価格が2倍以上違うケースや、診断内容が曖昧で判断できないといった課題は、多くの企業が直面する共通の問題です。
脆弱性診断の費用対効果を計算する方法|投資対効果を数値で示すテクニック
脆弱性診断の導入を検討しているものの、経営層から「その投資に見合う効果はあるのか」と問われて説明に困った経験はないでしょうか。セキュリティ対策は目に見える成果が出にくいため、費用対効果を数値で示すことが難しいと感じる担当者は少なくありません。
脆弱性診断を発注するまでの社内承認手順|スムーズに進める7ステップ
サイバー攻撃が巧妙化する中、脆弱性診断の必要性を感じながらも、社内承認のプロセスで苦労している担当者の方は多いのではないでしょうか。「経営層にどう説明すればいいかわからない」「稟議が通らない」といった悩みは、多くの企業で共通しています。