前回に引き続き、ITシステムのセキュリティ脅威分析についてお話します。
前回はリスク評価につかう手法である「DREAD」についてお話しました。ただし、この手法は専門家でない人にはわかりやすいのですが、評価者によって評価にばらつきが出るとの話をしました。今回は定量的に評価のできるCVSSについてお話します。
CVSSとはCommon Vulnerability Scoring Systemの略で、直訳そのままに共通脆弱性評価システムと呼ばれています。そのため、広い視点でのリスク評価とは異なりますが、定量的に評価ができることと脆弱性対策データベースに基本値が示されているため、利用している人は多いと思います。2005年にバージョン1がリリースされ2019年にバージョン3.1となっています。
では、具体的な内容を少し説明します。まずは評価点となるスコアと呼ばれる点数は最大10点までです。それを深刻度として、なし0、注意~3.9、警告、~6.9、重要~8.9、緊急~10の5段階で表現します。組織によっては、この深刻度の段階に応じて、対応を決めていることもあります。
先ほどデータベースに基本値が掲載されているといいましたが、スコアには脆弱性そのものを示す基本値、攻撃コードの有無や対策情報の状況を踏まえた現状を考慮し補正した現状値、利用環境を考慮し、再評価された環境値の3段階があります。
基本値は原則変化しませんが、現状値は実際の対応状況で変わっていきますし、環境値は利用者側の目線なので、組織単位で変わるものです。現状値まではベンダー側で出してくれますが、環境値は自組織で出すことになります。
では、スコアの算出方法を説明します。まずは、基本値の算定です。まず、攻撃による影響を3つの評価軸(機密性、完全性、可用性)で評価し、調整前影響度を算出します。次に影響の広がり(スコープ)を評価し、あり・なしで影響度を算出します。次に攻撃容易性を4つの評価軸(攻撃元、条件の煩雑さ、特権レベル、ユーザ関与レベル)で評価し、掛け合わせます。
最後に影響度と攻撃容易性を足し合わせて、小数点第1位で切り上げて基本値としてます。それぞれの評価結果に応じて数値が決まっており、計算は少し面倒ですが、+-×で計算できます。
次に現状値ですが、攻撃される可能性、利用可能な対策、脆弱性情報の信頼性の3つの軸で評価して、基本値に掛け算します。それぞれの値の最大値が1なので、かけても基本値が下がることはあってもあがることはありません。
最後の環境値は再評価なので、上記の計算を実際のシステムを考慮して、該当しないケースを排除した後(緩和対策といいます)の再評価を行って、各値を修正して、基本値を出しなおします。具体的には最初の影響度に対象システムのセキュリティ要求度をかけます。最大が1なので、要求度が高いときは影響度は同じ値になります。同様に攻撃容易性も評価しなおして、先ほどの影響度と足し合わせて、基本値といます。あとは、現状評価の3軸を評価して、基本値に掛け合わせると環境値となります。流れは現状値と同じです。
文章なので、わかりにくくいと思いますが、まとめると
影響度=調整前影響度(3つの軸で評価)をスコープで調整
攻撃容易性=4つの軸で評価したものを掛け合わせる
基本値=影響度+攻撃容易性
現状値=基本値×現状評価 ※ベンダー側評価
環境値=緩和対策後基本値×現状評価 ※運用側評価
となります。
つまり、基本値より大きくなるケースは少ないので、基本値を参考に対策基準を考えれば、判断しやすいということです。安易なことはよくないかもしれませんが、セキュリティでは、迅速な対応も重要なので、初動は基本値で考えてもいいと思います。