Japan

関連リンク

関連リンク

関連リンク

関連リンク

サイト内の現在位置

【入門】SSVCとは?基礎を学ぼう!

NECセキュリティブログ

2024年8月2日

NEC サイバーセキュリティ戦略統括部 セキュリティ技術センターの岩田琴乃です。本ブログでは、近年、注目が集まっている脆弱性の評価手法「SSVC(Stakeholder-Specific Vulnerability Categorization)」の概要・評価の決定方法・脆弱性のトリアージの考え方についてご紹介します。

目次

SSVCの概要

SSVCとは?

SSVCとは、カーネギーメロン大学ソフトウェア工学研究所により提案された、ステークホルダーのデプロイヤー(セキュリティパッチをソフトウェアに適用する人)・サプライヤー(パッチを提供する人)・コーディネーター(脆弱性対応を統制する人)毎に脆弱性対応の優先度を決めることができる脆弱性の評価手法ですPDF[1]。SSVCは「Decision Tree」と呼ばれる決定木を基に、分岐点毎に準備された値を選択することを繰り返すことで最終的な脆弱性対応の判断を導き出します。その分岐点を「Decision Point」と呼びます。また、GitHubにてSSVCを算出するためのツールのソースコードnew window[2]も公開されています。

CVSSとの違いは?SSVCのメリットとは?

SSVCは、脆弱性対応の優先度付けをサポートするための情報を提供していないというCVSSの課題を解決することができます。CVSS(Common Vulnerability Scoring System、共通脆弱性評価システム)とは、脆弱性の深刻度を評価する国際的な指標です。脆弱性は深刻度に合わせて0.0~10.0の値で表現され、また値のスコープごとに4段階のレベル(Low・Medium・High・Critical)に分類することができます。CVSSは脆弱性の評価指標として最も使用されていますが、脆弱性対応の優先度付けをサポートするための情報を提供していません。
一方、SSVCは脆弱性対応の意思決定をサポートし、以下のようなメリットを提供します。

  • ステークホルダー毎の脆弱性対応の優先度の意思決定をサポートしています。
    脆弱性対応の意思決定を行うのはSEさんのような現場の方だけでなく、ソフトウェアベンダーや脆弱性管理を統制する社内部署も含まれます。SSVCではステークホルダー毎のDecision Treeが提供されており、立場に応じた意思決定をサポートします。
  • 悪用されるリスクが考慮されています。
    後ほど説明しますが、SSVCのDecision Pointには「Exploitation(脆弱性の悪用状況)」「System Exposure(システムのネットワーク接続)」「Utility(攻撃者にとっての有用性)」があり、実際に悪用されるリスクが考慮されています。
  • 脆弱性が及ぼす資産への影響が考慮されています。
    こちらも後ほど説明しますが、Decision Pointの1つに「Human Impact(影響の大きさ)」があり、資産の重要度に応じて脆弱性が及ぼす影響の大きさも考慮されています。その内容には、その脆弱性が及ぼす身体・環境の安全への影響や組織のミッションに与える影響の評価も含まれています。

評価の決定方法は?

SSVCのDecision Treeは、ステークホルダー(デプロイヤー・サプライヤー・コーディネーター)毎に以下の3種類の決定木が用意されています。この3種類は構造が異なり、Decision Pointと最終的な対応の種類も異なります。

  • デプロイヤーツリー:パッチを適用する立場の人向け
  • サプライヤーツリー:パッチを提供する立場の人、ソフトウェア等を供給するベンダー向け
  • コーディネーターツリー:脆弱性対応を統制する人向け

デプロイヤーツリーの紹介

本ブログでは、SEさん等の現場の人向けであるデプロイヤーツリーに焦点を当て、ツリー構造と考え方を紹介します。図1はカーネギーメロン大学のホワイトペーパーに掲載されているオリジナルのデプロイヤーツリーを一部抜粋した図です。デプロイヤーツリーのDecision Pointは、「Exploitation」「System Exposure」「Utility」「Human Impact」の4つがあります。カーネギーメロン大学のデプロイヤーツリーで「Well-being and Mission Impact」と記載されている箇所は、「Human Impact」を意味しています。

zoom拡大する
図1 カーネギーメロン大学のデプロイヤーツリーを一部抜粋PDF[1]

脆弱性対応優先度

各Decision Pointでの判断を進めていくと、以下のようなデプロイヤーツリーの脆弱性対応の優先度が導き出されます。あくまで脆弱性対応の優先度の目安であり、実際に実行するかは現場の方の判断に任されます。

対応優先度 説明
Defer 現時点では対応しない
Scheduled 定期メンテナンス中に対応する
Out-of-cycle 定期メンテナンス外(次の可能な機会もしくは必要であれば作業時間外)で、通常よりも早く緩和もしくは修正の対応を行う
Immediate 即時対応を行う。必要であれば定期的な組織の運用を停止しても可能な限り素早く、全てのリソースを修正に集中させる。

Decision Pointと脆弱性トリアージの考え方

Decision Treeは主に脆弱性やシステムへの影響の重大度を考慮した設計となっています。本ブログはSSVCの基礎を学んでいただくことを目的としているため、詳細な定義はホワイトペーパーPDF[1]をご参照下さい。図2はデプロイヤーツリーのDecision Pointの意味と流れを説明した図です。

図2 カーネギーメロン大学のデプロイヤーツリーのDecision Point
  • Exploitation:現時点での脆弱性の悪用状況を表しています。
値(昇順) 定義
None 積極的な悪用の証拠はなく、脆弱性を悪用する方法の公的な概念実証(PoC)もない状況
PoC(Proof of Concept) 以下のいずれか
①エクスプロイトコードがアンダーグラウンドまたは限られたフォーラムで販売または取引されている状況、②MetasploitやExploitDBなどでPoCが一般に公開されている状況、③よく知られた悪用例がある状況
Active エクスプロイトが攻撃者によって実際に使用されているという信頼できる公開されているレポートがある状況
  • System Exposure:システムのネットワーク接続状態を表しています。
値(昇順) 定義
Small ローカルサービス or プログラム、高度に制御されたネットワーク
Controlled いくつかのアクセス制限または緩和策がすでに実施されているローカルまたはネットワーク上のネットワークサービス
Open インターネットまたはアクセスを制限または制御できない可能性のある別の広くアクセス可能なネットワーク
例)DNSサーバー・Webサーバー・VOIPサーバー・電子メールサーバー等
  • Utility:攻撃者にとっての有用性を表しています。Utilityは「Automatable(自動化可否)」×「Value Density (攻撃成功時に攻撃者が制御できるリソース)」を組み合わせて評価することで、最終的な値を出します。
Automatable Value Density Utility(昇順)
No Diffuse Laborious
No Concentrated Efficient
Yes Diffuse Efficient
Yes Concentrated Super effective
  • -
    Automatable:攻撃者がこの脆弱性の悪用イベントの作成を確実に自動化できるかを表しています。
値(昇順) 定義
No 攻撃者がこの脆弱性に対してサイバーキルチェーンのステップ①~④(偵察・武器化・デリバリー・エクスプロイト)を確実に自動化できない
Yes 攻撃者はサイバーキルチェーンを確実に自動化できる
  • -
    Value Density:攻撃者が単一の悪用イベントで制御できるリソースを表しています。
値(昇順) 定義
Diffuse 脆弱なコンポーネントを含むシステムのリソースは限られており、攻撃者が1回の悪用イベントで制御できるリソースが比較的小さい
例)一般ユーザのアカウント・端末
Concentrated 豊富なリソースを制御できる
例)認証サーバ・データベース・ログインページをホストするWebサーバー、クラウドサービスプロバイダー
  • Human Impact:その脆弱性が及ぼす影響の大きさを表しています。Human Impactは「Situated Safety Impact(安全性)」×「Mission Impact(組織のミッション)」を組み合わせて評価することで、最終的な値を算出します。
Situated Safety Impact(昇順) Mission Impact Human Impact
None/Minor None/Degraded/Crippled Low
None/Minor MEF failure Medium
None/Minor Mission failure Very high
Major None/Degraded/Crippled Medium
Major MEF failure High
Major Mission failure Very high
Hazardous None/Degraded/Crippled High
Hazardous MEF failure High
Hazardous Mission failure Very high
Catastrophic Bone/Degraded/Crippled Very high
Catastrophic MEF failure Very high
Catastrophic Mission failure Very high
  • -
    Situated Safety Impact:身体・環境に関する安全性への影響を表しています。システムへの影響として最も適しているも値を1つ選択します。
値(昇順) 被害の種類 定義
None ALL 文字通り影響がないという意味ではなく、4種類の全被害においてMinorの定義を下回っている状態
Minor Physical システムのユーザに対する身体的不快感や軽微な労働安全上の危険、物理的システムの安全マージンの低下
Environment 他者への軽微な影響(物的損害、環境的被害等)
Financial 複数人への容易に吸収できない経済的損失
Psychology 複数人にカウンセリングやセラピーの十分な原因となるような感情面・心理的被害
Major Physical システムのユーザに対する身体的苦痛や負傷、または重大な労働安全上の危険、安全な操作を支援するシステムの物理的故障
Environment 他者への重大な影響(物的損害、環境的損害等)
Financial 複数人が破産を起こす可能性のある経済的損失
Psychology 集団にカウンセリングやセラピーの十分な原因となるような広範囲に及ぶ感情面・心理的被害
Hazardous Physical 重度もしくは致命的な障害
※致命的な障害には、緊急サービス等により対応できる場合が該当する。
Environment 他者への重大な影響(生命や財産への脅威、広範囲の環境破壊、測定可能な公衆衛生上のリスク等)
Financial 影響を受けるコンポーネントを含有する社会技術的システム(選挙・金融証券等)が不安定となり、危険な状態になる
Psychology 該当なし(N/A)
Catastrophic Physical 複数人に即時に生命の危険が及ぶ(緊急対応はおそらく被害者を救うことはできない)
Environment 他者への極度の影響(即時の公衆衛生上の脅威、小機微な生態系の破壊を引き起こす環境破壊等)
Financial ソフトウェアによって支えられた社会システム(選挙、金融証券等)の崩壊
Psychology 該当なし(N/A)
  • -
    Mission Impact:組織のMission Essential Function(MEF)に不可欠な機能への影響を表しています。MEFは「法定もしくは執行憲章に定められている組織のミッションの達成に直接関連する機能」です。MEFを特定してミッションへの影響を考える必要があり、以下の定義が示されています。最も適している値を1つ選択してください。
値(昇順) 定義
None/None-essential Degraded 非本質的な機能の低下に至るまではほとんど影響がない。慢性的な劣化は最終的に必須機能に害を及ぼす。
MEF Support Cripped 必須機能を直接サポートする活動が機能不全に陥る。必須機能は一時的に継続する。
MEF failure ミッションに不可欠な機能のいずれかが、許容範囲を超える期間にわたって機能不全に陥る。組織のミッション全体が低下するが、一時的には達成可能である。
Mission failure 複数もしくは全ての必須な機能が機能不全に陥り、その機能を回復する能力が低下する。

SSVCの注意点

SSVCのDecision Treeを活用する上で注意点がいくつかあります。

  • 各Decision Pointの値には「不明」の選択肢が無く、絶対に値を選ぶことが必要です。
  • Decision Treeの最終判断の結果は永久的ではなく、時間経過により変化するものと捉えるのが良いです。
    あくまで、SSVCの最終判断はその時点での判断です。例えば、「Exploitation」の値が「None」⇒「Active」となり、最終判断が「Scheduled」⇒「Immediate」に変化するといった時間経過により優先順位が変わることがあります。脆弱性対応優先度は、その時点での判断に過ぎません。
  • SSVCのガイドはSSVCの構造・考え方に焦点を当てており、Decision Pointの詳細な内容を記載していません。よって、ツリーをシステムに実装する場合は組織毎に明確且つ具体的な定義を作成する必要があります。

まとめ

SSVCの概要・決定木、脆弱性トリアージの考え方についてご紹介しました。SSVCは脆弱性優先度付けの意思決定支援を行うものであり、最終的な脆弱性対応は現場の判断に任されています。しかし、これを用いることで脆弱性対応に関する知識の少ない方でも迅速に脆弱性のトリアージを行うことができます。
本ブログが脆弱性対応でお悩みの方のお役に立つと幸いです。

参考文献

執筆者プロフィール

岩田 琴乃(いわた ことの)
セキュリティ技術センター 脆弱性管理グループ

NECグループの社内向け脆弱性情報管理業務に従事しています。
SBOMに興味・関心があります。
好きなものは、焼き芋とクマです。
CISSP Associate、CEH、AWS Associateを保持。

執筆者の他の記事を読む

Escキーで閉じる 閉じる