{{item.title}}
{{item.text}}
{{item.title}}
{{item.text}}
2023-03-09
CVSSの課題を解消するために考案されたSSVCへの注目が、現在高まっています。「CVSSを利用した脆弱性管理における課題とSSVCによるその解決」の前編では、CVSSの課題やCVSSとSSVCの相違点について解説しました。後編となる本稿では、一般的な企業のCSIRTがSSVCを導入することを想定し、SSVCの決定木の1つであるデプロイヤーツリーについて、そして決定木を構成する各パラメータについて解説します。
SSVCを提唱した米カーネギーメロン大学の論文では、脆弱性を取り扱う立場として、「サプライヤー」「デプロイヤー」「コーディネーター」の3つを定めており、その立場ごとに異なる決定木が提供されています。企業がどの決定木を利用すべきかについて、明確な指針は出ていませんが、それぞれの決定木は次のような組織が利用すると考えられます。
サプライヤーツリー:ソフトウェアなどを供給するベンダー
デプロイヤーツリー:脆弱性対応の現場
海外支社やグループ会社を数多く持つ企業など、多数の組織を統制するような立場であればコーディネーターツリーを利用することが適切かもしれませんが、一般的な企業のCSIRTにはデプロイヤーツリーが適していると考えられます。ここではデプロイヤーツリーを中心に解説します。SSVC version 2.0のデプロイヤーツリーは次のように構成されています。
出典:米カーネギーメロン大学ソフトウェア工学研究所公開のオリジナル論文より
https://resources.sei.cmu.edu/asset_files/WhitePaper/2021_019_001_653461.pdf
デプロイヤーツリーでは、脆弱性が存在するソフトウェアを利用する当事者としての観点が含まれており、以下の要素から構成されます。
現時点における脆弱性の悪用状況を以下の3つの中から判定します。
None | 実際に悪用されている証拠がなく、かつ攻撃検証コードが公開されていない。 |
PoC(Proof of Concept) | ダークウェブ、ディープウェブなどのアンダーグラウンドで攻撃検証コードが売買されている。または、攻撃検証コードがインターネット上の脆弱性データベースやソースコードリポジトリで公開されている。もしくは、攻撃の再現手法が公知となっている。 |
Active | 公的機関、セキュリティベンダー、ソーシャルメディアなどで脆弱性を悪用した攻撃の発生が確認、報告されている。 |
影響を受けるシステムまたはアクセス可能な攻撃対象を以下の3つの中から判定します。
Small | ネットワークに接続されていないサービスやプログラム、またはファイアウォールなどで厳格にアクセスが制御されたネットワーク。 |
Controlled | 何らかのアクセス制限や緩和措置が施されているネットワーク。 |
Open | アクセス制限を十分に実施できないインターネット、または広くアクセス可能なネットワーク(DNSサーバー、ウェブサーバー、VOIPサーバー、メールサーバーなどが該当する)。 |
攻撃の自動化可否を判定する「Automatable」、攻撃成功時に得られる価値密度を判定する「Value Density」の2つの判定結果に基づいて、攻撃者にとっての攻撃の有用性を示す「Utility」を判定します。
攻撃者にとっての攻撃の有用性(Utility):
Automatable | Value Density | |
Laborious | No | Diffuse |
Efficient | No | Conventrated |
Yes | Diffuse | |
Super Effective | Yes | Conventrated |
攻撃の自動化可否(Automatable):
「Automatable」はサイバーキルチェーンの初めの4つのステップである「偵察」「武器化」「デリバリー」「エクスプロイト」の自動化可否を判定します。
No | 以下を含む理由により自動化が困難。
|
Medium | 偵察からエクスプロイトの自動化が可能。または、外部からのコードインジェクション、コマンドインジェクションなど、任意コードの実行が可能。 |
攻撃成功時に得られる価値密度(Value Density):
攻撃が成功した際に攻撃者が得られる情報の価値を以下の2つから選択します。
Diffuse | 攻撃成功時に攻撃者が得られるリソースやコントロールが限定的。システム管理者ではない一般ユーザーのアカウント、端末など。 |
Concentrated | 攻撃成功時により高いリソースやコントロールを奪取することが可能。データベース、認証サーバー、ログイン機能を提供するウェブサーバー、クラウドサービスプロバイダー、秘匿性の高いデータなど。 |
安全への影響を示す「Situated Safety Impact」と組織のミッションに対する影響を示す「Mission Impact」により、「Human Impact」を判定します。
人的影響(Human Impact):
Situated Safety Impact | Mission Impact | Human Impact |
None/Minor |
None/Degraded/Clippled |
Low |
None/Minor |
MEF Failure |
Medium |
None/Minor |
Mission Failure |
Very High |
Major |
None/Degraded/Clippled |
Medium |
Major |
MEF Failure |
High |
Major |
Mission Failure |
Very High |
Hazadous |
None/Degraded/Clippled |
High |
Hazadous |
MEF Failure |
High |
Hazadous |
Mission Failure |
Very High |
Catastrophic |
None/Degraded/Clippled |
Very High |
Catastrophic |
MEF Failure |
Very High |
Catastrophic |
Mission Failure |
Very High |
安全への影響(Situated Safety Impact):
物理的損害への影響を示す「Physical Harm」、環境的損害への影響を示す「Enviroment」、金銭的な損害への影響を示す「Financial」、心理的な損害への影響を示す「Psycological」の4つから判定し、最も高い値を利用します。
None | 影響が「Minor」以下(影響が全くないわけではなく、「Minor」の閾値以下) | |
Minor | 以下のいずれかに該当する場合 | |
Physical Harm |
|
|
Enviroment |
|
|
Finacial |
|
|
Psycological |
|
|
Major | 以下のいずれかに該当する場合 | |
Physical Harm |
|
|
Enviroment |
|
|
Finacial |
|
|
Psycological |
|
|
Hazardous | 以下のいずれかに該当する場合 | |
Physical Harm |
|
|
Enviroment |
|
|
Finacial |
|
|
Psycological |
|
|
Catastrophic | 以下のいずれかに該当する場合 | |
Physical Harm |
|
|
Enviroment |
|
|
Finacial |
|
|
Psycological |
|
組織のミッション(使命)と必須機能に対する影響(Mission Impact):
自組織の影響を以下の5つより判定します。
None |
ミッション達成に必要な機能にはほとんど影響がない。 |
Degraded |
ミッション達成に必要な機能に影響がある。 |
Crippled |
ミッション達成を直接的に支える活動が機能不全となるが、ミッション達成に必要な機能は一時的に継続する。 |
MEF Failure |
ミッション達成に不可欠な機能のいずれかにおいて、許容範囲を超えて長期間にわたり障害が発生する。 |
Mission Failure |
ミッション達成に不可欠な機能の複数または全てに障害が発生し、回復能力が低下する。回復能力の低下により組織のミッションが果たせなくなる。 |
SSVCの導入に向けて重要なポイントは大きく2つあります。1つ目はあらかじめ必要な情報を入手できる体制を整えておくこと。2つ目は各ステークホルダーとコンセンサスを取ることです。
上記で解説したとおり、SSVCは決定木と決定値およびその定義が定められていますが、いくつかの決定値はどのような影響であればどの値とするか、自組織であらかじめ決定しておく必要があります。自組織で決定しておく必要があるものは、「Value Density」と「Human Impact」の「Mission Impact」に関わる定義となります。「Value Density」は、攻撃が成功した時に攻撃者がどのような情報を得られるかを判断する値です。これは、攻撃対象の端末が持つ情報や、さらなる侵害に繋げられるかといった観点で決定します。例えば、「Active Directory」やシステム管理者の端末、機密情報を扱うプロジェクトに利用している端末などが侵害された場合、機密情報へのアクセスが可能となる恐れがあるため「Concentrated」とし、それ以外のケースは「Diffuse」にするといったことが考えられます。全ての端末やデータを一つひとつ定義付けることは困難なため、例えば自社の情報区分とリンクさせて、極秘情報や機密情報を取り扱う端末は「Concentrated」とするケースが一般的でしょう。
「Mission Impact」の値を判断するには、該当するシステムが停止した際の影響をあらかじめ把握する必要があります。例えば、製造業であれば工場の停止につながるシステムはミッションクリティカルなシステムと言えますし、ウェブアプリケーションを提供している組織ではウェブアプリケーションがミッションクリティカルなシステムと言えます。これらは組織によって特性が異なるため、自組織においてどの程度影響が及ぶのかを十分に考慮し、決定する必要があります。上記については、インシデント発生時には必ず利用するものであるため、SSVCの利用有無に関わらず整備することが重要と言えるでしょう。
また、SSVCの決定木では脆弱性の悪用状況や、攻撃の自動化可否など、攻撃に関する詳細な情報を入手する必要があります。これらの情報はインターネット上で収集することも可能ですが、膨大な脆弱性情報に対して自組織で一つひとつ調査・収集を行うことは困難であることが想定されます。このような情報については、脆弱性に関わるインテリジェンス情報を配信するサービスを活用することなどにより、比較的容易に収集できると考えられます。
上記に示したようにSSVCの導入に向けては決定木を判断するための情報をあらかじめ入手できるよう、入念に準備を行う必要があります。
SSVCでは決定木にのみ従って判断を行うため、いざ対応のフェーズになって意見の不一致が起きないよう、その対応内容について事前に各関係者と十分に意思共有を図る必要があります。そのためには、さまざまなモデルケースを利用して評価を繰り返し、開発部門、運用部門、利用部門など幅広いステークホルダー間でその判断結果に違和感がないかを確認することが重要です。また、SSVCを用いて判断した結果は、各決定ポイントにおいて「なぜそのような判断を行ったか」など、判断を行った背景を正確に記録しておくことが重要です。ステークホルダー間で意見の不一致が起きた場合、この記録を用いることで目線を合わせた議論や、円滑なコミュニケーションを行うことができます。なお、米カーネギーメロン大学のオリジナル論文では、ステークホルダーが集まり、幅広いコンセンサスがあれば、決定木を変更したり、追加したりすることができるとされています。あらかじめ用意された決定木の結果に違和感がある場合は、自組織独自の要素を加味し、最適な決定木にカスタマイズしていくことも考えられるでしょう。
SSVCはこれまでの脆弱性評価手法に比べてより迅速かつ明瞭に意思決定ができる可能性があります。また、判断条件が明確であるため、システムによる自動化も行うことができ、CSIRTの運用負荷軽減に大きく寄与できる可能性があります。一方で、SSVCを全社的な脆弱性判断プロセスとして導入するためには、自社環境を正確に把握することや、脆弱性悪用状況を収集するための仕組みを構築すること、各ステークホルダーと調整することなどが必要であり、多くの時間とコストを要することが想定されます。SSVCの導入においては、まずは特定のシステムなどを対象にパイロット的に導入し、意思決定をサポートするツールとして活用することで、これまでの判断手法の代わりとして活用できるのかを確認することから始めることが成功への一歩となるでしょう。