go-cve-dictionaryを利用しよう
どうやって?
- CGIから叩いてみたり、コマンドラインから叩いてみたり。
どんな感じなの?
- とりあえず、nvds, jvns, reference テーブルあたりを使うのが良いかも。
どんな感じ
-
$ sqlite3 cve.sqlite3
してみる。
nvds, jvnを見てみる
-
cve_id
が、CVE番号 - score, access_vector, access_complexity, authentication, confidentiality_impact, integrity_impact, availability_impact, cwe_id が、CVSSに該当
- 更新日は
last_modified_date
最近更新されたCVEはどれ?
sqlite> select cve_id, last_modified_date from nvds order by last_modified_date desc limit 5;
CVE-2017-17058|2017-11-29 02:29:00.317-05:00
CVE-2017-17054|2017-11-29 02:29:00.287-05:00
CVE-2017-17053|2017-11-28 22:29:00.317-05:00
CVE-2017-17052|2017-11-28 22:29:00.267-05:00
CVE-2017-17050|2017-11-28 22:29:00.237-05:00
sqlite>
CVSS Scoreは、累計でどんな感じなの?
sqlite> select score, count(*) from nvds group by score order by score desc limit 10;
10.0|6460
9.7|6
9.4|55
9.3|6065
9.0|712
8.8|31
8.7|1
8.5|249
8.3|92
8.2|5
sqlite>
終わりに
なんとなくCVE情報を分析できるかもしれない感じのデータベースです。
- 「今」だけではなく、特定期間の傾向などを分析できる、か?