Mirai Translate TECH BLOG

株式会社みらい翻訳のテックブログ

脆弱性情報収集の基礎知識

この記事は みらい翻訳のカレンダー | Advent Calendar 2023 - Qiita の 23 日目です。

こんにちは。プラットフォーム開発部でリードエンジニアをしている chance です。

今回は脆弱性の情報収集についてお話をします。

はじめに

システム開発・運用において、言うまでもなく脆弱性対策は必須ですよね。

と言っても、やるべきことは色々とあります。

  1. 設計・開発段階での防御の実装
  2. 静的コード解析によるリスク分析
  3. 脆弱性診断による検知
  4. システムやソフトウェアの適切なアップデート
  5. 新たに発見された脆弱性の情報収集と対処

今回はこの中でも最後に挙げた最新情報の収集について見ていきます。というのも、脆弱性に関しては様々な情報源があり、似たような用語もたくさんあるため、情報をまとめておきたいと思ったためです。

脆弱性情報収集プロセスのベストプラクティスはIPAのサイトなどをご参照頂くとして、

www.ipa.go.jp

本稿では脆弱性に関連するシステムや組織などをリファレンス的にまとめます。概要とワードが掴めれば詳細はそれぞれ調べることができるので、なるべく広範に情報整理できればと思います。

TL; DR

図にまとめてみました。なんとなくイメージしやすく画像を付けましたが、まったく他意はありません。

脆弱性管理概観

目次

概要

まず全体像を眺めます。

日々新しく報告され続ける脆弱性に対して国や組織を跨いで一意な識別をするため、CVE で一意な ID を振り、NVD で詳細情報(脆弱性の内容や対策、CWE,CPE,CVSS,KEVなど)が公開されます。これらは MITRE社 と NIST によって管理されています。

また日本においては IPAJPCERT/CC によって、JVN というポータルサイトJVN iPedia という脆弱性情報データベースが運営されています。

脆弱性に関連する組織は他にも、KEV を策定している CISA、SSVC を策定している CERT/CC、CVSS や EPSS を策定している FIRST などがあります。また、コミュニティとしては OWASP なども有名です。

それでは、各用語について整理していきます。

脆弱性リスト/データベース

名称 超概要 情報収集
CVE 世界的に一意な脆弱性情報リスト -
NVD CVEに詳細情報を付けたデータベース https://nvd.nist.gov/vuln/data-feeds
KEV 既に悪用が確認された脆弱性リスト https://www.cisa.gov/about/contact-us/subscribe-updates-cisa
JVN 日本の脆弱性情報ポータルサイト https://jvn.jp/rss/jvnrss.html
JVN iPedia 日本の脆弱性情報データベース https://jvndb.jvn.jp/ja/feed/

CVE (Common Vulnerabilities and Exposures)

cve.mitre.org

脆弱性情報に一意な ID を割り当てるもので、アメリカの MITRE Corporation が管理しています。CVE の目的は「脆弱性を一意に識別すること」とされるため、詳細情報は NVD などを参照する必要があります。

例:発行された西暦と通番で表現されます。 CVE-2023-XXXXXX

CVE Reference Key/Maps

CVE では世界中の様々な脆弱性データベースを参照しています(CVE - CVE Reference Key/Maps)。例えば、APPLEMicrosoft といった企業、DEBIANUBUNTU といった団体、日本からも JVN と JVNDB が含まれています。

CNA (CVE Numbering Authorities)

CVE は MITRE社に認定を受けた世界中の様々な組織や企業が採番できます(cve-website)。2023 年 12 月現在で日本からは 11 の団体が認定を受けていて JPCERT/CC も含まれています。

NVD (National Vulnerability Database)

nvd.nist.gov

CVE を分析して詳細情報を決定し、検索可能なデータベースとして公開されています。管理される情報には、その脆弱性の技術的な内容、対策や修正情報、脆弱性の分類(CWE)、影響を受ける対象(CPE)、深刻度やリスク(CVSS)、悪用された実績(KEV)などが含まれます。NIST (アメリカ国立標準技術研究所) という組織が管理しています。

NIST から API による情報収集が可能です。RSS Feed も提供されていましたが、廃止されるとのことでした。

NVD - Data Feeds

CWE(Common Weakness Enumeration)

脆弱性を体系的に識別するためのカテゴリです(CWE - CWE List Version 4.13)。MITRE により管理されています。

例:SQL インジェクション CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

CPE(Common Platform Enumeration)

ハードウェアや OS、アプリケーションなどを識別するための名称です(NVD - CPE)。NIST により管理されてます。

例:Red Hat Enterprise Linux 4.0 Update 4 の場合 cpe:/o:redhat:enterprise_linux:4:update4

CVSS(Common Vulnerability Scoring System)

脆弱性の深刻さを定量評価するためのスコアです。後述します。

KEV(Known Exploited Vulnerabilities catalog)

www.cisa.gov

既に悪用が確認された脆弱性の一覧です。CVSS スコアによらず「実際に悪用されているかどうか」で評価されることが特徴です。

CISA というアメリカの政府機関が管理していて、2021 年 11 月公開と比較的新しい情報です。2022 年から、NVD にも KEV が含まれるようになりました。

KEV 単体での RSS Feed はありませんが、CISA からのレポートが提供されています。

Subscribe to Updates from CISA | CISA

JVN (Japan Vulnerability Notes)

jvn.jp

日本国内に関連のある脆弱性情報を提供するポータルサイトです。脆弱性情報にJVN IDを振り当てられ、脆弱性が確認された製品とバージョン、脆弱性の詳細や分析結果、製品開発者によって提供された対策や関連情報、回避策などが掲載されます。JPCERT/CCIPA によって共同運営されています。

JVN は CVE との相互リンクされているものがあります。また、US-CERT(現 CISA)、CERT/CC、CPNI(イギリスの政府機関)などと連携した情報も含みます。これらの連携先は JVN ID で表現されていて、JVN# で始まる ID が JVN 主導で調整したもの、 JVNVU#JVNTA# は他の組織が調整したものです。

情報収集として RSS Feed が利用できます。

Japan Vulnerablity Notes/JVNJS/RSS Feed

JVNDB(JVN iPedia)

jvndb.jvn.jp

JVN に加えて NVD などの海外の情報も踏まえた脆弱性対策情報データベースです。JVNをより検索しやすくしたものになっています。JVN と同じく IPA, JPCERT/CC によって管理されています。

JVNDB は JVN に加えて情報量も広範にカバーしていると言えますが、より総合的な情報整理を行うため、JVN の方が情報公開が早い場合があります。どちらかのみの参照ではなく、併せて活用するのがよいです。

情報収集として RSS Feed が利用できます。

JVN iPedia - 脆弱性対策情報データベース

組織

名称 超概要 情報収集
MITRE CVEの管理 -
NIST NVDの管理 https://nvd.nist.gov/vuln/data-feeds
CISA ガイドラインの提示, KEVの管理 https://www.cisa.gov/about/contact-us/subscribe-updates-cisa
CERT/CC SSVCの管理 -
FIRST CVSS, EPSSの管理 -
OWASP Webアプリのセキュリティ対策 -
IPA JPN, JPN iPediaの管理 https://www.ipa.go.jp/security/security-alert/index.html
JPCERT/CC JPN, JPN iPediaの管理 https://www.jpcert.or.jp/rss/

MITRE Corporation

www.mitre.org

読み方は「マイター」です(知らないと読めない)。非営利の研究機関で CVE を管理しています。他にも CWE や ATT&CK なども管理されています。

情報収集としては、NVD からのものを見ればよいかと思います。

NIST (National Institute of Standards and Technology)

www.nist.gov

アメリカ国立標準技術研究所で、 NVD を管理しています。他にもサイバーセキュリティフレームワーク(CSF)や SP800 シリーズなどのガイドラインを整備されています。NIST は MITRE のスポンサーでもあり、関係が深いようです。

NVD の項に書いた通り、様々な情報を提供してくれています。

CISA(Cybersecurity and Infrastructure Security Agency)

www.cisa.gov

CISA は、アメリカの国家のサイバーセキュリティ専門機関です。KEV カタログを公開してくれています。JP-CERT/CC は US-CERT と連携しているとのことですが、2023 年 2 月に US-CERT と ICS-CERT が廃止となって CISA に統合されているようです。

KEVの項に書いた通り、様々な情報を提供してくれています。

CERT/CC (CERT CoordinationCenter)

www.kb.cert.org

モリスワーム事件というセキュリティインシデントをきっかけに、1988 年 11 月にカーネギーメロン大学に作られた歴史ある組織です。CERT/CC として独自の脆弱性リストをまとめていて JVN とも情報連携しています。また、脆弱性管理手法として SSVC を提案し、管理されています。

CVE/NVD や JVN と連携しているため、情報収集としてはそちらを参照すればよいかと思います。

FIRST (Forum of Incident Response and Security Teams)

www.first.org

世界中の CSIRT 同士の情報交換や協力関係を目的として、CERT/CC を中心に設立されたフォーラムです。脆弱性の評価指標である CVSS や EPSS の策定も活動の一つです。

情報収集という観点では、Feedを受け取るというより必要に応じて参照する形がよいかと思います。

OWASP (Open Web Application Security Project)

owasp.org

OWASP TOP10 なででも有名な、Web アプリケーションセキュリティにフォーカスしたコミュニティです。最近話題の LLM に特化した OWASP TOP10 もあります。また、OWASP ASVS(アプリケーションセキュリティ検証標準)というものも公開されています。

こちらも、Feedを受け取るというよりは必要に応じて参照する形がよいかと思います。

IPA(Information-technology Promotion Agency, Japan)

www.ipa.go.jp

脆弱性やサイバーセキュリティに限らず、広く情報処理における普及や教育などを行なっています。情報処理技術者試験でご存知の方も多いかと思います。JVNJVN iPedia を運営しています。

情報収集する場合は、E メールや X(Twitter)の他、RSS Feed が利用できます。

重要なセキュリティ情報 | 情報セキュリティ | IPA 独立行政法人 情報処理推進機構

JPCERT/CC(Japan Computer Emergency Response Team Coordination Center)

www.jpcert.or.jp

サイバーセキュリティを専門とした非営利団体です。脆弱性が発見された後の情報公開までの調整、対策検討や支援などを行なわれています。JVNJVN iPedia を運営しています。CVE の CNA に含まれているため、CVE を直接採番できます。

IPAJPCERT/CC の関係性としては以下のようです。

  • IPA : 発見者からの脆弱性情報の受付窓口
  • JPCERT/CC : 製品開発者への連絡、公表に関する調整など

情報収集する場合は、RSS Feed が利用できます。

JPCERT コーディネーションセンター RSS

フレームワーク

名称 概要
CVSS 脆弱性の深刻度のスコアリング
SSVC 脆弱性対応の意思決定のサポート
EPSS 30日以内に悪用される可能性の評価

CVSS(Common Vulnerability Scoring System)

www.first.org

脆弱性の深刻度を同一基準の下で定量的に評価出来る指標です。FIRST によって策定されていて、2023 年 11 月に v4.0 が公開がされました。

評価結果は 数値と 4 段階のレベルで表現されます。

  • Low:0.1 - 3.9
  • Meduim:4.0 - 6.9
  • High:7.0 - 8.9
  • Critical:9.0 - 10.0

NVD などにも採用されていて、定量的に脆弱性の危険度を把握できます。

ただし、いくつかの課題もあると言われています。例えば、

  • 深刻度は定量的だが、それをもってどう判断したらいいかが不明瞭
  • 深刻度は把握できるが、それが実際に顕在化するかどうかが不明瞭

これらを解消するために、他の評価指標が生まれました。

SSVC(Stakeholder-Specific Vulnerability Categorization)

insights.sei.cmu.edu

脆弱性の対応方針を機械的に判断できるようにした管理手法です。カーネギーメロン大学(CERT/CC)によって提案され、2021 年に v2.0 が公開されています。

CVSSの課題の一つであった「対応方針が不明瞭」というものに対処しています。

いくつかの質問に答えると自動的に対応(緊急対応か静観かなど)が決まります。例えばデプロイヤー(パッチを適用する人)向けの場合、判断結果は以下のいずれかになります。

  • defer(パッチ作業はしない)
  • scheduled(定期メンテナンスで対応)
  • out-of-cycle(準備が出来次第対応)
  • Immediate(緊急対応)

EPSS (Exploit Prediction Scoring System)

www.first.org

今後 30 日以内に脆弱性が悪用される可能性を示す指標です。FIRST によって開発され、2022 年 2 月に EPSS v2 が公開されました。

CVSSの課題の一つであった「実際に顕在化するかどうかが不明瞭」というものに対処しています。

ただしリスクの大きさを考慮していないため、これ単体で意思決定に用いるのではなく補完的な用途であると言えます。

その他

CVEやJVNのように統合管理されているものの他、各企業・団体からも情報発信されています。自分たちが採用している製品の動向を適宜確認するのがよいかと思います。

例えば、AWSからは以下の情報が提供されています。

https://aws.amazon.com/jp/security/security-bulletins/

まとめ

脆弱性管理に関する用語は似たような言葉や略語が多いので、忘れた頃に見返せるように基礎知識を集めました。概観をまとめたかったので説明は思い切ってなるべく最小限に削りました(それでも長い。)詳細は各リンクからどうぞ。

話を戻して、脆弱性情報収集としては、まず JVN, JVN iPedia, IPA, JPCERT/CC の情報収集をして、自組織の状況に合わせて収集範囲を広げるのがよいかと思います。

また意思決定の基準も CVSS を基本として、運用に課題を感じたら必要なものを足していくのがよいかと思います。

最後に

みらい翻訳では、エンジニアを募集しています。

ご興味のある方は、ぜひ下記リンクよりご応募・お問い合わせをお待ちしております。

miraitranslate.com