CVSS v3.1 概要
「脆弱性そのものの技術的深刻度」を、ベンダー・業界・利用環境に依存せず、共通尺度で数値化するための指標として、CVSS v3 は開発されました。CVSS v3 は、“攻撃の容易さ“、“侵害された場合の影響の大きさ”、“環境条件(任意)” の3つの観点から脆弱性の危険度(攻撃能力)を10点満点で評価します。得点が高ければ危険であることから直感的ですが、残念ながらCVSS v3 には、いくつかの欠陥があり、以下のような批判があります。
- 環境差は考慮されない
✕ 交通システム=生命に直結
〇 検証用テスト環境=実害がない - 攻撃の現実性は測れない
理論的に成立する脆弱性と、実際の攻撃に悪用される脆弱性が同じスコアになる - パッチ適用の優先度の目安にしにくい
スコアが高いが、IPS / WAF で遮断可能だったり、そもそも攻撃が到達せず、今すぐパッチを適用しなくてもよい場合があるが、スコアだけでは判別つかない
つまり、CVSS v3 スコアは実際のリスク(起きる確率✕被害)を計るものではありません。そこで、この点を克服するべく、2023年に CVSS v4 が公表されましたが、計算が複雑で、v3 と v4 のスコア齟齬があり混乱を招くことから 普及は進んでいません。現時点では、v3.1 が国際標準であり、依然として CVSS v3スコア は共通指標として利用されています。
CVSS v3.1 スコアに対する基本的な考え方
上記のような欠点を踏まえたとしても、防御的観点からは “CVSS v3.1 は攻撃能力の指標” であり、全体的な判断は、脆弱性の「能力判定基準」を参照してください。以下の表は、一般的な目安に過ぎません。例えば、CVE-2023-24880 (Windows SmartScreen のセキュリティ機能のバイパスの脆弱性)のように、スコアが 4.4 という低いものでありながら、実際の攻撃に悪用された例が存在しています。
| CVSSv3 スコア | リスク区分 | 一般組織 *4 | 重要インフラ | 実際の攻撃が確認されている |
|---|---|---|---|---|
| 9.0–10.0 | Critical | 7日以内 | 48–72時間以内 | 即日(24h以内) |
| 7.0–8.9 | High | 30日以内 | 14日以内 | 7日以内 |
| 4.0–6.9 | Medium | 90日以内 | 60日以内 | ケースバイケース |
| 0–3.9 | Low | 半年〜1年 | 90日以内 | ゼロデイ対象外 |
CVSS v3 スコアの読み方(VPN 機器の場合)
VPN へのパッチ適用を検討する管理者としては、以下のベクターに適合した場合は、急いだほうがよいといえます。
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C- AV: Attack Vector (攻撃元区分)
- VPN 機器は、N(ネットワーク)経由の攻撃以外は成立しにいデバイスともいえますので、N は要注意です。
- AC: Attack Complexity (攻撃条件の複雑さ)
- 攻撃側の問題なので、L は警戒すべきですが、H だから攻撃がないという事はあり得ません。
- PR: Privileges Required (攻撃に必要な特権レベル)
- 特権が必要な攻撃はハードルが高いといえますが、N(不要)は警戒が必要となります。一方で、特権昇格可能な脆弱性が同時に存在すれば、危険です。
- UI: User Interaction(攻撃に必要なユーザー関与レベル)
- 一般的にユーザー操作が必要な攻撃は成立しにくいといってよいでしょう。反対に、N(攻撃者のみで攻撃可能)であれば危険です。
- S: Scope (攻撃による影響範囲)
- C(Changed)は、VPN 機器セキュリティ境界を越えることを指しますので、他のシステムに影響が及び重大なインシデントにつながる可能性を示します。
| 評価基準 | 解説 |
|---|---|
| AV: Attack Vector (攻撃元区分) | Network (N):インターネット経由 Adjacent (A):同一VLAN Local (L):ログオン端末 Physical (P):物理接続(USB等) |
| AC: Attack Complexity (攻撃条件の複雑さ) | Low (L):特別な条件なし High (H):特定の条件が必要 |
| PR: Privileges Required (攻撃に必要な特権レベル) | None (N):認証不要 Low (L):一般ユーザー権限が必要 High (H):管理者権限が必要 |
| UI: User Interaction (攻撃に必要なユーザー関与レベル) | None (N):攻撃者のみで攻撃可能 Required (R):ユーザー操作が必須 |
| S: Scope (攻撃による影響範囲) | Unchanged (U):同一セキュリティ境界内 Changed (C):セキュリティ境界を突破できる |
CVSS v3 スコアの読み方(一般業務 PC の場合)
一般業務で使用する PC でのベクターを考えます。VPN と異なり、PCやサーバーの場合、組織の環境によってCVSS v3.1 のベクターの読み方が大きく異なる例を紹介します。
CVE‑2021‑40444(MSHTML RCE)
CVE‑2021‑40444(MSHTML RCE)は、CVSS v3.1 ベーススコア 7.8、悪意あるMS Office文書に埋め込まれたActiveX コントロールを介して、内部の mshtml.dll を通じてリモートの CAB ファイルを読み込み、DLL を実行する攻撃でした。ユーザーが文書を開く操作を行う必要があり(UI:R)、攻撃成功後にはセキュリティ境界が変更されるため Scope:Changed、つまり攻撃者が別のプロセスやシステム要素を乗っ取れる範囲に達します。
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:Cこの攻撃は操作が必要な攻撃のため、従業員に対して “不審な電子メールの添付ファイルを開かない” という教育を行っているかによって、評価が変わります。また、ASR ルールである “メール・Web経由のマクロ実行防止” を有効にしていればパッチ適用が多少遅くても実害は低減できます。このことから、教育や Windows の防御設定の実施状況によっても、評価は大きく異なります。
CVE‑2022‑30190(Follina:MSDT RCE)
CVE‑2022‑30190(Follina:MSDT RCE)は、CVSS v3.1 ベーススコア 7.8、特別な Word / RTF ドキュメント(Remote Template や外部 HTML リンクを含む)を用意し、ユーザーがそれを開くと、その内容が ms‑msdt: URI スキームを通じて MSDT(Microsoft Support Diagnostic Tool) を呼び出します。これはユーザーの権限において PowerShell やスクリプトを実行可能であり、UI:R が求められるものの、マクロ無効でも動作する点が非常に危険です。Scope は U(Unchanged)で、セキュリティ境界内にとどまりますが、重大と評価されています。
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:Uこの脆弱性もユーザー操作が必要ですが、マクロ不要で発動するという意味では、従業員教育だけでは防ぐことが難しく、EDR やウイルス対策ソフトからみると、一般的なアプリケーションの動作と受け止められる可能性があり、危険です。ASR ルールの “すべての Office アプリケーションが子プロセスを作成できないようにブロックする” の適用の有無によって、脆弱性修正を急ぐべきか、猶予があるかの判断が異なります。
