この記事は、Vuls Advent Calendar 2016の1日目の記事です。
はじめに
システム運用をされている方で、脆弱性情報を収集するために毎日NVD(https://nvd.nist.gov/ )やJVN(https://jvn.jp/ )の更新情報をチェックされている方は多いと思います。
しかし、Vuls祭り #1で発表した「Vulsで危険な脆弱性を最速検知!」の中でも触れましたが、それらの情報が常に最新で正しい情報であるとは限りません。半年間Vulsを使っていて気付いた点を書いていきたいと思います。
vuls tuiの表示で、Scoreが「?」になっている
原因として以下のことが考えられます。
1.CVE-ID全部のスコアが「?」になっている。
→ NVDデータを取り込んでいない。vuls tuiではNVDのデータを元に表示するので、JVNのデータしか取り込んでいない場合も同様のことになります。
2.一部だけ「?」になる
→ NVDのデータを更新していない(or できていない)。
→ NVD、JVNにそもそも該当のCVE-IDに関する情報が登録されていない
ディストリビュータがパッケージを更新していてもNVD、JVNに情報が掲載されるまで時間が掛かる場合があるようです。
- 上記のキャプチャに示した「CVE-2016-1000110」は名前付き脆弱性「httpoxy」として注意喚起(https://www.jpcert.or.jp/at/2016/at160031.html )されているものですが、2016/12/1現在もNVD、JVNに掲載されていません。
- RedHat(https://access.redhat.com/security/cve/cve-2016-1000110 )
- 2016-07-18に初回公開
- NVD(https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-1000110 )
- 2016/12/1現在「CVE ID Not Found」
- JVN(http://jvndb.jvn.jp/search/index.php?mode=_vulnerability_search_IA_VulnSearch&keyword=CVE-2016-1000110 )
- 2016/12/1現在「該当するデータがありません。」
- RedHat(https://access.redhat.com/security/cve/cve-2016-1000110 )
NVDとJVNでCVSSスコアが異なる場合がある
情報の更新タイミングによっては、NVDとJVNの間でCVSSスコアや影響パッケージが異なる場合があります。場合によっては数か月異なるままの場合もあるようです。
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-5696
http://jvndb.jvn.jp/ja/contents/2016/JVNDB-2016-004375.html
脆弱性対象が変わる
「Vulsで危険な脆弱性を最速検知!」で紹介した事例ですが、元々はApple系製品だけと記載されていたものが、全Linux系OSに範囲が拡大しました。
RedHatが修正パッケージを公開してからNVDの記載内容が修正されるまでに34日間かかりましたが、VulsはRedHatの修正パッケージの公開直後から脆弱性のあるパッケージを正しく検知することが出来ていました。
CVE-IDが払い出しされたあと詳細が掲載されるまでに年単位で時間がかかっている場合がある
脆弱性が修正されてもNVDに掲載されるまでの期間は様々です。
例えば「CVE−2013−4312」では、CVE MITERにIDが登録されたのは2013/6/12にも関わらず、NVDに初めて詳細が掲載されたのは2016/2/7であり、970日もかかっています。CVE-IDの年番が古いからといって混乱することなく、実際に情報が掲載された日時を確認する必要があります。
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-4312
JVNの方が情報公開が早い場合もある
Vuls祭り#1の時の発表(http://www.slideshare.net/jpcert_securecoding/ss-66412794 )の中で、JVN iPediaはNVDの情報も取り入れているということでしたが、当然JVN独自の情報もあります。
CVE-2016-5195(Dirty COW https://dirtycow.ninja/ )の情報についてはかなり早い段階(2016/10/25)にJVNへ掲載されました。(NVDは2016/11/10初回公開)
http://jvndb.jvn.jp/ja/contents/2016/JVNDB-2016-005596.html
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-5195
さいごに
NVD・JVNの更新情報を追いかけていた時に比べて、VulsとVulsRepoを使うことで格段に早く正確な情報を得ることができるようになりました。特に脆弱性の修正がされているにも関わらず、NVDやJVNに脆弱性情報が長い間掲載がされていないケースがかなりあることに驚きました。
修正済みの脆弱性を確実にチェックし早期に対応するために、Vulsを使って日々チェックしましょう。