vulsがciscoの脆弱性検知に対応できない理由
vulsにciscoの脆弱性検知を実装しようと試みたが、できなかったので、その理由を述べる。
cisco脆弱性データベース(go-cve-dictionaryやら)を作るのに、2通りの方法があって、OVALとCVRFで取ってくる方法がある。
OVAL
まず、試みたのが、OVALの方。vulsは影響の受けるversionでfilterをかけるときに、versionが必要なのだが、それのデータベースを作ろうとしたができない。
なぜかというと。
すでにサポート済みのredhatなどの ovalの
CVRF
上記の通り、影響の受けるversionがCVRFにあると、検知できそう。
しかし、影響の受けるversionが書いてあるには、書いてあるが、記述の一貫性がなく、とても正規表現で抽出したりできない。(少なくても、私は、)
そうゆうわけで、cisco検知に対応できない。
もし、できそうなアルゴリズムがあれば教えて欲しい。このブログのコメントにでも書いて欲しい。
このブログは、10分で書いたものであるので、グダグダです。