Overview
VDP(Vulnerability Disclosure Policy:脆弱性開示ポリシー)とは、外部のセキュリティ研究者やホワイトハッカーが組織のシステムやサービスにセキュリティ上の脆弱性を発見した場合に、安全かつ合法的に報告するための手順と方針を定めたドキュメントです。VDPは、組織と発見者の双方を法的に保護しながら、脆弱性情報を適切に共有・修正するための枠組みを提供します。
VDPには通常、報告の受付窓口(メールアドレスやWebフォーム)、対象となるシステムやサービスの範囲(スコープ)、禁止される行為(データの窃取、サービス妨害など)、報告者への法的保護の約束、報告から修正までの期待されるタイムライン、そして報告に対する謝辞(クレジット)の方針が含まれます。バグバウンティプログラムと異なり、VDPでは金銭的な報酬を提供しないことが一般的ですが、両者を併用する組織も増えています。
米国ではCISA(Cybersecurity and Infrastructure Security Agency)がBOD 20-01を発行し、連邦政府機関にVDPの策定を義務付けています。日本においても、経済産業省やIPAが脆弱性の取り扱いに関するガイドラインを策定しており、情報セキュリティ早期警戒パートナーシップによる届出制度が運用されています。VDPの整備は、組織のセキュリティ成熟度を示す重要な指標となっています。
Details
VDPの基本構成要素
効果的なVDPには以下の要素が含まれます。まずスコープ(対象範囲)として、テスト対象のドメイン、アプリケーション、サービスを明確に列挙します。次に禁止事項として、データの破壊・窃取、サービス妨害、第三者への情報開示などを明記します。
セーフハーバー条項(法的保護の約束)は特に重要で、ポリシーに従った善意の調査に対して法的措置を取らないことを明言します。また、応答時間のSLAとして、受領確認(通常48時間以内)、初期評価(通常5営業日以内)、修正完了の目安を定めます。
責任ある開示(Responsible Disclosure)
責任ある開示とは、発見者がまず開発元・運営組織に脆弱性を非公開で報告し、一定の猶予期間(通常90日間)を設けて修正を待ち、修正後に初めて公開するという慣行です。GoogleのProject Zeroは90日間の開示ポリシーを厳格に運用しており、業界標準として広く認知されています。
これに対して完全開示(Full Disclosure)は、脆弱性を即座に公開する手法で、ベンダーに修正を急がせる効果がある一方、修正前に攻撃者に情報を与えてしまうリスクがあります。また、協調的脆弱性開示(Coordinated Vulnerability Disclosure:CVD)は、複数のベンダーやCERT/CCなどの調整機関が連携して開示を管理する手法です。
VDPとバグバウンティの違い
VDPは脆弱性報告の受付チャネルと法的枠組みを提供するものであり、基本的に報酬は伴いません。一方、バグバウンティプログラムは脆弱性の深刻度に応じた金銭的報酬を提供し、より積極的にセキュリティ研究者の参加を促します。
多くの組織は、まずVDPを策定して脆弱性報告のプロセスを確立し、運用が成熟した段階でバグバウンティプログラムを追加導入するアプローチを取ります。HackerOne、Bugcrowd、Intigritiなどのプラットフォームは、VDPとバグバウンティの両方をホスティングするサービスを提供しています。
security.txtとVDP
security.txt(RFC 9116)は、Webサイトのセキュリティ連絡先情報を標準化するための仕様です。/.well-known/security.txtにファイルを配置することで、脆弱性を発見した研究者が報告先を容易に見つけられるようになります。
security.txtには、連絡先メールアドレス、暗号化用のPGP鍵のURL、VDPページへのリンク、ポリシーの有効期限などを記載します。VDPと組み合わせることで、脆弱性報告のプロセス全体がスムーズに機能します。
日本における脆弱性開示の枠組み
日本では、情報セキュリティ早期警戒パートナーシップに基づき、IPA(情報処理推進機構)が脆弱性情報の届出を受け付けています。届出された脆弱性は、JPCERT/CCがベンダーとの調整を行い、JVN(Japan Vulnerability Notes)で公開されます。
2024年に改正された不正アクセス禁止法に関連する解釈ガイドラインにより、善意のセキュリティ調査に対する法的保護の方向性が示されつつあります。しかし、依然として法的リスクが残るため、組織がVDPで明確なセーフハーバー条項を設けることが、研究者の安全な調査を促進するうえで重要です。
Security Measures
- 01明確なVDPの策定と公開:組織のWebサイトにVDPを公開し、報告先のメールアドレス(例:security@example.com)、対象スコープ、禁止事項、法的保護(セーフハーバー条項)を明記してください。security.txt(RFC 9116)も併せて設置し、報告先の発見性を高めましょう。
- 02脆弱性報告のトリアージプロセス構築:報告された脆弱性を迅速に評価・分類するためのトリアージプロセスを構築してください。受領確認は48時間以内、初期評価は5営業日以内を目安とし、CVSSスコアに基づく優先度付けを実施しましょう。
- 03報告者との適切なコミュニケーション:脆弱性報告者に対して、受領確認、評価結果、修正計画、修正完了の各段階で定期的にコミュニケーションを取ってください。報告者の貢献に対する感謝と適切なクレジット(謝辞)の付与も重要です。
- 04脆弱性修正のSLA設定:脆弱性の深刻度に応じた修正期限のSLA(Service Level Agreement)を設定してください。Critical(緊急)は24時間以内、High(高)は7日以内、Medium(中)は30日以内、Low(低)は90日以内が業界のベストプラクティスです。
- 05VDPプラットフォームの活用:HackerOne、Bugcrowd、Intigritiなどの脆弱性開示プラットフォームを活用し、報告の受付・管理・トラッキングを効率化してください。将来的なバグバウンティプログラムへの拡張も容易になります。
- 06VDP運用の定期的な見直しと改善:VDPの運用状況を定期的に振り返り、報告件数、平均修正時間、報告者のフィードバックなどを分析してください。ポリシーの内容やプロセスを継続的に改善し、組織のセキュリティ成熟度の向上につなげましょう。
Incidents
📋 Missouri州知事が記者を「ハッカー」として告発した事件(2021年)
2021年、ジャーナリストが州政府のWebサイトで教員の社会保障番号がHTMLソースコードに含まれていることを発見し、州に報告しました。しかし、Missouri州知事はこの報告者を「ハッカー」として刑事告発すると表明しました。
この事件は、VDPが存在しない組織で脆弱性を報告することのリスクを象徴的に示しました。最終的に検察は起訴を見送りましたが、この事件をきっかけに、政府機関におけるVDPの整備と、善意の報告者を保護する法制度の必要性が広く議論されました。
📋 DJI社VDP運用の成功事例(2017年〜)
ドローンメーカーのDJI社は2017年にバグバウンティプログラムを開始しましたが、初期の運用では研究者との関係が悪化する事態が発生しました。研究者がDJIの顧客データが公開サーバーに露出していることを報告したところ、DJI側の対応が遅く、コミュニケーションも不十分でした。
この経験を踏まえ、DJI社はVDPの大幅な改善を行い、明確なスコープ定義、迅速な応答SLA、セーフハーバー条項の強化を実施しました。その結果、報告件数の増加と平均修正時間の短縮を実現し、VDP改善の好事例として知られるようになりました。
📋 米国国防総省「Hack the Pentagon」プログラム(2016年〜)
2016年、米国国防総省は連邦政府機関として初のバグバウンティプログラム「Hack the Pentagon」を実施しました。このプログラムは、VDPの策定から始まり、段階的にバグバウンティに発展したモデルケースです。
プログラム開始から最初の24時間で138件の脆弱性報告があり、最終的には1,410人の参加者から138件の有効な脆弱性が報告されました。総報奨金は約15万ドルでしたが、同等のセキュリティ評価を外部企業に委託した場合のコストと比較して大幅な節約になったと報告されています。このプログラムの成功が、CISA BOD 20-01による連邦機関のVDP義務化につながりました。