VPRとは何か?
VPR(Vulnerability Priority Rating)は、主に Tenable, Inc. が提供する脆弱性優先順位付けのスコアリング方式です。
従来の静的な「この脆弱性は技術的にはどれくらいヤバイか(=重大度)」を示す指標だけでなく、「この脆弱性が近い将来どれくらい攻撃に使われる可能性があるか(=脅威度)」「現実にどれくらい利用されているか」という時間・脅威インテリジェンスを加味して、「今何を先に直すべきか」を可視化するものです。
言い換えれば、VPRは「技術的な深刻度」+「脅威の現実/動き」を掛け合わせた“優先順位指標”です。まさに「直すべきものを直す」ためのツールですね。
なぜ必要か/従来の問題点
従来の指標である Common Vulnerability Scoring System (CVSS) は、主に技術的な特性(例えば「攻撃者がどこからアクセスできるか」「特権は必要か」「影響は機密性/整合性/可用性にどれほどか」。など)に基づいてスコアを付けます。
しかし、CVSSだけでは「この脆弱性が実際に攻撃に使われるかどうか」「今まさに狙われそうか/既に使われているか」といった動的な脅威状況を反映しにくいとの指摘があります。
例えば、技術的には深刻だが実際にはほとんど利用されていない脆弱性と、技術的には中程度でも、既に攻撃手法が出回っていて多数の被害が発生している脆弱性とでは、優先すべき度合いが違います。VPRはその“差”を可視化できるよう設計されています。
つまり、組織の限られた資源で「何から直すべきか」を決める際に、単なる“重要だ”というラベルだけではなく“今すぐ直すべきだ”を判断する助けになるツールです。
VPRの主な構成・仕組み
要素
-
技術的インパクト(Technical Impact)
- 脆弱性が成立した場合に、機密性・整合性・可用性(CIAトライアド)にどれだけ影響を与えるか。
- 実質的に CVSSv3 の Impact サブスコアと同等の役割を持つとされています。
-
脅威(Threat)
- 過去や現在の攻撃・悪用活動/公開された Exploit コードの有無/PoC(Proof-of-Concept)や実利用の観察/ハッカーフォーラム・ダークウェブ上での言及など、動的な脅威インテリジェンス情報を反映。
- 脆弱性が「狙われているか」「狙われそうか」を予測する機械学習モデルなどもこの中に入っているという説明があります。
-
スコアリングとカテゴリ分類
- VPR の値は 0.1~10.0 の範囲をとり、値が高いほど「優先すべき」脆弱性です。
- カテゴリとしては:
- Critical:9.0~10.0
- High:7.0~8.9
- Medium:4.0~6.9
- Low:0.1~3.9
-
更新の頻度
- 脆弱性・脅威状況・攻撃手法の変化に応じて、VPRは 毎日または定期的に再計算される仕組みです。
仕組み(ざっくり流れ)
- 脆弱性が公開/識別される
- 技術的影響度を算出(例:CVSSインパクト部分)
- 脅威インテリジェンス(公開攻撃コード、PoC、フィールド利用実績、ハッカー言及など)を収集
- 機械学習モデル等で「この脆弱性が近い将来どれだけ攻撃される可能性があるか」を予測
- 技術的影響度+予測脅威度から VPR スコアを算出
- 組織にとって「今直すべきもの」の優先順位が付き、ダッシュボードなどで可視化
VPRとCVSSの違い・比較
主な違い
- 観点が違う:CVSS は「この脆弱性は技術的にどれくらい深刻か」という静的観点が中心。対して VPR は「この脆弱性はどれくらい緊急で、攻撃されそうか/されているか」という動的観点も入れています。
- スコア分布の違い:CVSSでは「High」や「Critical」が大量に付与されることで、どれを真っ先に直すべきか判断が難しくなるケースがあります。例えば、VPRを採用した場合、Criticalに分類される脆弱性の割合が極めて低くなり,真に優先すべきものが絞られます。
- 更新頻度・脅威反映:CVSSベースだと、脆弱性公開時点の特性に依るところが大きく、攻撃の動き・実利用状況の変化は必ずしも速やかに反映されません。VPRは脅威情報を取り込み、時間とともにスコアを更新します。
利用者視点でのメリット
- 本当に「直すべき」脆弱性にリソースを集中できる(ノイズが少なめ)
- 脅威の動きにも敏感なので、攻撃サイクルを先取りする形で防御できる
- 組織の限られたパッチリソースを戦略的に配置できる
注意すべき点・限界
- VPRはあくまで「一般的な脅威状況に基づくスコア」であって、自社の資産・業務・脅威状況に完全に即しているわけではないという点。資産の価値・露出状況・内部対策などは別途考慮する必要があります。例えば、重大ではない資産でも外部公開されていれば優先度が上がるべき、というような判断。
- 利用にはその前提として「脆弱性スキャンがある」「脅威情報が更新されている」「スコアを運用に反映できるプロセスがある」ことが求められます。
- スコアが低でも、自社の環境では致命的な影響を及ぼす可能性があるケースもあり、スコアだけに盲信するとリスクを見落とす恐れがあります。
導入・運用のヒント
-
資産の棚卸しをきちんと
- どのアプリモジュール・ネットワークサービス・依存ライブラリが脆弱性スキャン対象かを明確にする。
- Androidアプリであれば、ライブラリ(例えばKotlin、Compose、Flutterプラグイン等)も含めて脆弱性管理対象とする。
-
スコアだけで終わらせない
- VPRスコアを「高/中/低」の目安とし、自社の状況(公開可否、顧客影響、データ機密性など)と掛け合わせて“優先度”を決定する。
- 例えば、「VPR は中でも、該当モジュールが外部サーバーと通信していて、顧客データを扱っている」などの状況なら優先度を上げる。
-
パッチ適用・修正プロセスを整備する
- 脆弱性発見 → スコア付与(VPR)→ 優先検討 → 修正/検証 → 展開という流れを定義し、自動化できる部分は自動化すると安心。
-
定期的なレビューとスコアの変化をチェック
- VPRは毎日更新される可能性があるため(例えば攻撃が公開された/状況が変わったなど)「昨日は低だったが今日は高に上がった」という通知ルールを設けておくと、見落としを防ぎやすい。
-
レポートと経営層/開発チームへの共有
- 「直すべきものを見える化する」ために、VPR+自社資産インシデント可能性などを可視化し、開発/運用/意思決定層で共通言語にする。
-
外部情報との統合を検討
- 例えば、脅威フィード(攻撃者フォーラム、PoC、メタスプロイトモジュールなど)や依存ライブラリチェーンの可視化と合わせて使うと、より精度の高い“優先順位付け”が実現できます。
まとめ
VPRは、脆弱性管理における「何を直すか」の判断をより実践的/動的に支援するための指標です。従来の技術的重大度(CVSSなど)だけでは捉えきれなかった「今・攻撃される可能性」を加味することで、セキュリティリソースを効率的に使う助けになります。
ただし、万能ではなく「自社の状況(資産価値・露出・業務影響)」「スコアの意味と限界」を理解した上で運用することが不可欠です。