CVE-Manager: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
Строка 27: Строка 27:


cve-manager.py работает в диалоговом режиме, на каждом шаге выводится справочная информация о возможных действиях - на первом шаге следует выбрать нужный для использования в данный момент модуль, при выборе модуля выводится справочная информация данного модуля. При начале работы с нуля следует запускать модули в том порядке, в котором они перечислены в разделе "Структура программы".
cve-manager.py работает в диалоговом режиме, на каждом шаге выводится справочная информация о возможных действиях - на первом шаге следует выбрать нужный для использования в данный момент модуль, при выборе модуля выводится справочная информация данного модуля. При начале работы с нуля следует запускать модули в том порядке, в котором они перечислены в разделе "Структура программы".
== Отладка ==
Для отладки <i>cve-manager</i> следует установить и настроить MySQL сервер:<br>
1) Установить пакет MySQL-server:<br>
<code>apt-get install MySQL-server</code>
2) Закомментировать строку <i>skip-networking</i> в файле настройки MySQL сервера <i>/etc/my.cnf.d/server.cnf</i>:<br>
<code>#skip-networking</code>
3) Перезапустить MySQL сервер и запустить его консоль:<br>
<code>su -l -c 'service mysqld restart'</code><br>
<code>mysql -u root</code>
4) Задать в MySQL пароль пользователя <i>root</i>:<br>
<code>SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root-passwd');</code><br>
, где <i>root-passwd</i> - задаваемый пароль пользователя <i>root</i><br>
5) Добавить в MySQL пользователя, от имени которого будет осуществляться работа с БД:<br>
<code>grant all privileges on *.* to 'user'@'localhost' identified by 'user-passwd';</code><br>
, где <i>user</i> - имя пользователя, <i>user-passwd</i>- пароль пользователя.


== Ссылки ==
== Ссылки ==

Версия от 14:41, 7 мая 2018

cve-manager - консольная программа для отслеживания уязвимостей программного обеспечения, имеет модульную структуру, написана на Python и C++. Распространяется по лицензии GPLv3.0.

Структура программы

cve-manager состоит из следующих модулей:
- cve-manager.py - диалоговый интерфейс для запуска всех остальных модулей, написан на Python;
- cve-download.py - осуществляет загрузку по https CVE списков и CPE словаря, написан на Python;
- cve-import - осуществляет внесение списка пакетов выбранных репозиториев alt-сервера, а также CVE списков и CPE словаря в базу данных (БД) MySQL, написан на C++;
- cpe-map.py - осуществляет установление соответствия названий исходных пакетов рассматриваемых репозиториев, расположенных на alt-сервере, и product из CPE словаря, написан на Python;
- cve-fixes.py - извлекает 'Fixes' записи и URL из метаданных всех исходных пакетов рассматриваемых репозиториев, написан на Python, использует gb-x-parse-vulns-from-changelog;
- cve-issue.py - осуществляет установление соответствия между данными, внесёнными в БД с помощью модулей cve-import, cpe-map.py, cve-fixes.py, а именно - записи в БД вида (<CVE идентификатор>, <название пакета>, <наличие 'Fixes' записи>), написана на Python;
- cve-monitor.py - предназначен для посылки запросов в БД, например получение списка всех пакетов с имеющимися незакрытыми уязвимостями.

Настройка

Параметры cve-manager определяются файлом ini-формата /etc/cve-manager/cve-manager.conf. Данный ini-файл состоит из следующих секций:
1) database, содержащей параметры соединения с базой данных MySQL;
2) branches, содержащей метки о рассмотрении (значение 1) или не рассмотрении (значение 0) соответствующей ветви Sisyphus;
3) paths, в которой указывается путь к корневому каталогу alt-сервера, а также путь к каталогу, в который cve-download.py загружает входные данные и откуда cve-import их импортирует в БД.

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

Запуск cve-manager:
cve-manager.py [timer]

Необязательный параметр timer задействует таймер, который измеряет интервалы времени исполнения запускаемых модулей.

cve-manager.py работает в диалоговом режиме, на каждом шаге выводится справочная информация о возможных действиях - на первом шаге следует выбрать нужный для использования в данный момент модуль, при выборе модуля выводится справочная информация данного модуля. При начале работы с нуля следует запускать модули в том порядке, в котором они перечислены в разделе "Структура программы".

Отладка

Для отладки cve-manager следует установить и настроить MySQL сервер:
1) Установить пакет MySQL-server:
apt-get install MySQL-server

2) Закомментировать строку skip-networking в файле настройки MySQL сервера /etc/my.cnf.d/server.cnf:
#skip-networking

3) Перезапустить MySQL сервер и запустить его консоль:
su -l -c 'service mysqld restart'
mysql -u root

4) Задать в MySQL пароль пользователя root:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root-passwd');
, где root-passwd - задаваемый пароль пользователя root

5) Добавить в MySQL пользователя, от имени которого будет осуществляться работа с БД:
grant all privileges on *.* to 'user'@'localhost' identified by 'user-passwd';
, где user - имя пользователя, user-passwd- пароль пользователя.

Ссылки

Проект на git.altlinux.org