脆弱性情報を一意に識別するための共通の識別子 ~CVEとは~

エンジニアノート

 

脆弱性のニュースを頻繁に目にするようになったなぁ、と思う今日このごろです。SYNESIS製品のセキュリティ関連についてのお問い合わせも以前にくらべて増えています。
セキュリティがサービスに及ぼす影響度が増していると実感します。
今回は、脆弱性について調べていると必ず出てくるキーワード「CVE」について解説します。

CVEとは

CVE(Common Vulnerabilities and Exposures:共通脆弱性識別子)とは、情報セキュリティの脆弱性とエクスポージャ(外部から侵入できるバグ)のリスト化した辞書です。
この管理は、米国連邦政府による資金提供のもと非営利団体であるMITRE(マイター)が運営しています。
余談ですが、MITERとは「MITRE ATT&C フレームワーク」でも有名なあのMITERです。

さてそのCVEでは、問題となる脆弱性を一意に識別するためにCVE-ID(CVE識別番号)を付与します。
CVE-IDは、「CVE-<西暦年号>-<連番>」の体系となっています。
連番の割り当ては、1999年運用開始以来2013年までは4桁の連番でしたが、年々見つかる脆弱性が増加傾向にあるため、2014年以降現在はでは5桁以降も漸次桁数を増やし採番できる仕組みになっています。
番号体系については、New CVE ID Syntaxを参照ください。

CVE-IDの情報

実際にCVE-IDは、どのように登録されているのでしょうか。
検索するためには、まずSearch CVE Listに移動します。
そこで、キーワードや番号を入力すると一覧が検索可能です。
CVE List Search Tipsによるとキーワード検索をする際は「Unix」や「buffer overflow」などの一般的なキーワードではなく、具体的なアプリケーション名を入れると正確な結果を得られやすいようです。
ちなみに以前結構大きな話題になった「HEARTBLEED」で検索した結果が以下です。

CVE検索結果

検索結果は2件出てきました。
DescriptionからCVE-2014-0160がもともとの脆弱性だということがわかりますので、そこをクリックしてみると以下の情報が掲載されています。

項目 説明
CVE-ID CVE識別番号
Description 脆弱性の説明
Reference 公式ベンダー情報などの参考情報URL
Assigning CNA 登録した組織
Date Record Created レコードを作成した日付

さすがに大きな話題となっただけあり、ベンダー情報は盛りだくさんにリンクがあります。

この中で登録された組織として「CNA」とありますが、CVE Numbering Authorityの略です。
CNAの役割は、個別製品の脆弱性に対して識別子番号CVEを採番して割り当てることです。
CVE Numbering Authorities (CNAs) によると、2022年4月現在で日本で登録されている団体は8つあります。
また、JPCERT/CCが日本国内のCNAやステークホルダーとの調整を行うRoot CNAとしての役割を担っています。

最近の傾向

近年のCVE発行数の数は確実に増加傾向にあります。最近の伸びは少し鈍化していますが、HEARTBLEEDで世間を騒がせた2014年から比べると登録される数は2倍以上です。
以下が2013-2021年に公開されたCVEの総数のグラフです。グラフとデータは、SIOS CURITY BLOGから拝借しました。

出典:SIOS SCURITY BLOG CVE数の動向と考察(2021年版) Part1

図1は2013-2021年に公開されたCVEの総数(つまりCVE発行数)を年ごとにグロスで見てみたものになります。日次には「Published Date」を用いていますので、そのCVEが公開された日になります。これは未だに201x年の脆弱性で未公開だったものが公開され続けているからで、例えば、CVE-2013-XX(年数はその年のバグフィックスで直してあるという意味になりますので、2013年で修正対応済みになります)が2021年に公開された場合には、2021年の公開としてカウントしています。

2013-2021年に公開されたCVEの総数

SIOS SECURITYより出典

出典:SIOS SCURITY BLOG CVE数の動向と考察(2021年版) Part1

先日、Spring Framework 脆弱性 (CVE-2022-22965)の影響について、SYNESISのポータルサイトでお知らせしました。2022年も半ばでですでにCVE-IDは5桁の番号となっています。

【お知らせ】Spring Framework 脆弱性 (CVE-2022-22965) の影響について

SYNESISにかぎらず製品がその脆弱性に対して該当しているかや該当していた場合の対処法については、都度ベンダーサイトで確認することをおすすめします。

まとめ

今回は、CVEについて解説しました。
みなさまの中には、昨年末のApache Log4j(CVE-2021-44228)の対応に追われた方も多いのではないでしょうか。
一意の番号で管理されていることにより、ベンダーだけでなくユーザ側でも、脆弱性情報の同一性の判断を容易に行うことができるようになります。

しかしながら、SCAP(セキュリティ共通化手順)の要素となっている脆弱性情報は、CVEだけではないです。
今後は、CVE以外の脆弱性情報の用語についても順次解説していく予定です。