自動トリアージ

FutureVulsの自動トリアージ機能は3つの機能から構成されており、組み合わせて利用するのがおすすめです。

    1. SSVC決定木による自動トリアージ機能
    1. ルールベースの注意喚起機能
    1. ルールベースの自動非表示機能

1. SSVC決定木による自動トリアージ

CVSS基本値「のみ」を判断基準にした脆弱性管理は「実際のリスクベース」で判断できないという課題があります。また CVSS基本値ベースの運用は下記のような課題があるといわれています。

  • CVSS Base Scoreは、トリアージ用途のものではない
  • システム環境や攻撃状況に対する評価が適切に行われていない
  • 意思決定をするためのガイドラインは用意されていない

CVSSの課題を解決するために考案された脆弱性管理の最新のフレームワークが、カーネギーメロン大学の論文「SSVC」(Stakeholder-Specific Vulnerability Categorization:直訳「利害関係者固有の脆弱性分類」) であり、FutureVulsでは最新のSSVCトリアージエンジンを実装、搭載しています。

SSVCは、脆弱性そのものの情報だけではなく以下の4つの情報をもとに決定木を用いて「実際のリスク」を導出して、対応を4段階で自動決定できます。

ssvc-tree

SSVC決定木への4つの入力情報(Decision Point)

  • システムのNW環境
  • システムの業務影響
  • 実際の攻撃状況
  • 攻撃者目線の利用価値

これら4つの情報と脆弱性情報を変数に決定木を辿ると、出力として下記の4つの対応レベル(SSVC Priority)が導出されます。

 SSVC Priority 内容
Immediate 全てのリソースを集中し必要に応じて組織の通常業務を停止して可能な限り迅速に対応する
Out-of-Cycle 通常よりも迅速に行動し、計画外の機会に緩和策または修復策を実施する
Scheduled 定期メンテナンス時に対応する
Defer 現時点では対応しない

SSVC設定方法

FutureVulsでSSVCのトリアージエンジンを利用するためには、管理するシステムごとに異なる以下の2つの設定が必要です。

  • システムのインターネット露出度(Exposure)を選択
  • 攻撃された際の業務影響(Human Impact)を選択

image

システムごとに異なる2つの特徴を設定するだけでSSVCの自動トリアージエンジンが動作し、検知されたタスクを4つのレベルに自動分類します。

設定の詳細は、manual>SSVC設定方法を参照してください。グループ単位でSSVC決定木のカスタマイズも可能です。

SSVCの結果を確認する

SSVC決定木から導出されたSSVC Priorityは「判断根拠が明確である」というメリットがあります。FutureVulsではSSVC決定木の導出過程が一目瞭然でわかるように表示されます。導出過程はタスク詳細画面に下図のように表示されます。

image

脆弱性タブやタスク系タブなどの一番画面にも「SSVC Priority」列が追加されていますので、たとえば「immediate」のみを表示する、といったようなフィルタ操作も一覧画面上で可能です。

SSVCによる高度な自動トリアージ

FutureVulsではSSVCが出力した4種類のSSVC PriorityをTriggerとしたアクションを設定できます。

image

たとえば、Immediateなタスクは優先度Highにしてタスク期限2週間後に設定したり、Scheduledなタスクはタスクステータスdeferに、優先度Lowに、タスク期限をCRON式で例えば次回メンテナンス日の12月2週の水曜日といった設定もできます。

image

SSVCによってトリアージされたタスクを、日々継続的に差分で対応してタスク管理していくイメージです。

SSVCの詳細はVuls祭りのYoutube

このページで説明した内容は、「Vuls祭り#6」で発表した内容の簡略版です。詳細や実際のシステムでの導出方法について知りたい場合は「Youtube:最新の脆弱性トリアージフレームワーク「SSVC」の概要とFutureVulsでの実装例 Vuls祭り#6」をぜひご覧ください。

動画では下記の5パターンのシステムを例にSSVC決定木の導出過程を説明しています。(動画 27:00~)

    1. インターネット公開された「超」重要システム
    1. インターネット公開された重要Webサービス
    1. 社内NWにある基幹システム
    1. 業務影響が小さい社内システム
    1. 閉域網の「超」重要な基幹系システム

FutureVuls上で検知された脆弱性をSSVC決定木を用いて実際に自動分類した結果も紹介しています。(動画 31:10~)

image

上のスライドの通り、合計で4,716件の脆弱性に対して、

  • 「CVSS基本値 ≧ 7」でフィルタすると2,863件ヒットした
  • 「CVSS基本値 ≧ 8」でフィルタすると990件ヒットした
  • 「パターン2. インターネット公開された重要Webサービス」を想定してSSVCで実際に分類したところ「immedia」(即時対応)は16件、「out-of-cycle」(計画外対応)は50件にまで絞り込める

CVSS基本スコアベースでのトリアージと比較して、SSVCは圧倒的なフィルタ性能(システム環境によっては15倍以上絞り込み可能)であり、日々の脆弱性管理において現実的に運用可能な件数まで「実際のリスクベース」で絞りこめるという結果となりました。

SSVCの詳細やFutureVulsの自動トリアージについては下記ブログやマニュアルを参照してください。

2. ルールベースの自動注意喚起機能

Danger機能を用いると、他の運用者に注意喚起することが可能となります。 DangerされたCVEは赤くハイライトされます。 他グループの運用者は、注意喚起された脆弱性であることを認識し、トピックを表示することで注意喚起の詳細情報を知ることができます。たとえば、SSVCの結果現状は「Immediate」にならないが、念のためCVSSスコアが10のものを組織内に注意喚起するといったようにSSVCを補完する機能として使えます。

3. ルールベースの自動非表示機能

自動非表示機能は、「低リスクとみなす」ルールを事前に定義し、ルールに該当する低リスクなタスクを自動で非表示にする機能です(検知はされるが、タスクが自動で非表示ステータスになる)。