Vulnerability Management Tool

Основные алгоримты по поиску были взяты из проекта IVA (https://github.com/fkie-cad/iva)

Алгоритм работы с инструментом

  1. Скачать CPE- и CVE-фиды
  2. Загрузить их в базу данных
  3. Найти соответствующий установленному ПО его CPE URI
  4. По найденному CPE URI осуществить поиск CVE

Настройка

Инструмент использует СУБД MySQL. Нужно заранее создать базу данных. Настройки БД задаются в файле config.py

Необходимые пакеты устанавливаются из файла requirements.txt с помощью pip:

> pip install -r requirements.txt

Использование

Скачивание CPE- и CVE-фидов:

> python download_feeds.py

Инициализировать БД

> python dbcli.py init

Загрузить фиды в БД (~ 30 мин)

> python populate_cpes.py
> python populate_cves.py

Поиск CPE URI. Скрипту передается вендор, продукт и версия

> python cpe_match.py 'Microsoft Corporation' 'Microsoft .NET Framework 4.5.2' '4.5.51209'

Если вендор неизвестен, то можно воспользоваться следующей командой:

> python search_vendor.py 'winamp'

Поиск CVE:

> python cve_match.py 'cpe:2.3:a:microsoft:.net_framework:4.5:*:*:*:*:*:*:*'

Для разработки

Можно частично заполнить базу данных - 5 CPE и 5 CVE. Для этого надо создать переменную среды TESTING со значением True База данных в этому случае используется та, что указана в DB_TEST_NAME в файле config.py