脆弱性

【脆弱性レポートの読み方】〜OpenSSL脆弱性を例に〜

2016.05.19

脆弱性

How-to-read-the-vulnerability-report

こんにちは。
SecurityTIMES編集部です。

先日、 OpenSSLの脆弱性(CVE-2016-2108)が報告されました。

脆弱性レポートは、パッと見ても理解しにくいですよね。本エントリでは脆弱性レポートを噛み砕き「脆弱性レポートが読める気分になっていただける」あたりを目指したいと思います。


目次

(1) CVE(共通脆弱性識別子)

簡単に言うと、〜番目に割り当てられた脆弱性だよ、ということです。
詳しく述べますと、発見された脆弱性には CVE(Common Vulnerabilities and Exposures) という固有の識別子が割り当てられます。CVEは、個別製品中の脆弱性を対象として、米国政府の支援を受けた非営利団体のMITRE社が採番している識別子です。
「CVE-西暦-連番」の形で、CVE Editorial Boardで報告された脆弱性を評価し番号を割り当てています。

というわけで、今回の OpenSSLの脆弱性は、CVE-2016-2108に割り当てられていますので、 2016年の2108番目に認定された脆弱性であることがわかると思います。

(2) Overview(脆弱性の概要)

Overview=概要 と、和訳のままですね。脆弱性に関する概要が記述されています。
今回はCVE-2016-2108は ASN.1 形式の取り扱いに関する脆弱性と問題のあるバージョンについて記述されています。

(3) Impact(脆弱性の影響度)

脆弱性影響のレポートは、CVSS(Common Vulnerability Scoring System:共通脆弱性評価システム)に基づいた形式となっています。CVSSは現在 Version3.0 となっており、2.0 ではホストやシステム単位の評価でしたが、昨今の仮想化やサンドボックス化(保護された領域内でプログラムを動作させること)に対応するためコンポーネント単位(何らかの機能を持った、プログラムの部品毎)に評価を行う仕様となりました。

脆弱性の報告内容については、NIST の National Vulnerability Database を参照します。

CVSSによる評価内容は、version 3.0 と 2.0 に分かれて記述されていますが、基本的な項目と書式は類似してますのでまとめて説明したいと思います。

(2.1) Base Score

総合評価として、「影響度(Impact Score)」 と「攻撃容易性(Exploitability Score)」にスコープ変更の考慮を入れて算出します。
[v3] CVSS v3 Base Score: 9.8 Critical
[v2] CVSS v2 Base Score: 10.0 HIGH

CVSS v3 では、以下のようにレベル分けされています。

(2.2) Vector

評価項目と評価値の省略表現をしています。v3の項目名については Metrics にフルネームと省略名があるので対応付けが可能です。評価値については、評価値の頭文字を取っています。Metrics について読んだあとにこれを見るとこの脆弱性の影響度を1行で把握することができます。

[v3] CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
[v2] Vector: (AV:N/AC:L/Au:N/C:C/I:C/A:C)

v3での評価を日本語にすると、この攻撃が比較的容易なわりに被害が大きいことが理解できます。「ネットワークを経由し、攻撃条件は複雑でなく、権限は不要で、ユーザ関与は不要。影響範囲は広がらないが、データ漏えい、改ざん、業務停止の可能性が高い。」

(2.3) Impact Score

影響度スコアを示します。数値が高いほど攻撃時の被害が大きいことを示します。
影響度は、「機密性( Confidentiality Impact )」、「完全性( Integrity Impact )」、
「可用性( Availability Impact )」などから算出します。

[v3] Impact Score: 5.9
[v2] Impact Subscore: 10.0

(2.4) Exploitability Score

攻撃の容易性を「攻撃区分」、「攻撃条件の複雑さ」、「権限要求」、「ユーザ関与」から算出します。
v3 では数値が低いほど攻撃が容易であることを示します。

[v3] Exploitability Score: 3.9
[v2] Exploitability Subscore: 10.0

(2.5) Metrics

具体的な評価項目とその評価を示します。この省略形が Vector に記述されます。

[v3]
Attack Vector (AV:攻撃区分): Network
Attack Complexity (AC:攻撃条件の複雑さ): Low
Privileges Required (PR:権限要求): None
User Interaction (UI:ユーザ関与): None
Scope (S:影響範囲): Unchanged
Confidentiality (C:漏えい可能性): High
Integrity (I:改ざんの可能性): High
Availability (A:業務停止の可能性): High

[v2]
Access Vector (AV:攻撃区分): Network exploitable
Access Complexity (AC:攻撃条件の複雑さ): Low
Authentication (Au:認証が必要か): Not required to exploit
Impact Type (I:影響の種別): Allows unauthorized disclosure of information; Allows unauthorized modification; Allows disruption of service

以上が、CVSSによる評価内容の基本的な項目です。

いかがでしたでしょうか。
脆弱性レポートが読めることは基本的なことですが、検索しても噛み砕いて説明しているものは少ないので、本エントリでまとめてみました。ちょっと不安かもと思った方は、何度か読みなおしていただければ、理解が深まるかと思います。