CVE-Manager: различия между версиями
Нет описания правки |
Нет описания правки |
||
Строка 22: | Строка 22: | ||
Запуск cve-manager:<br> | Запуск cve-manager:<br> | ||
<code>cve-manager [-- | <code>cve-manager [-h] [-a] [-t] [-p] [-d]</code> | ||
<br> | |||
<i>-h, --help</i> - Вывод справки;<br> | |||
<i>-a, --auto</i> - Запуск модулей один за другим в автоматическом режиме;<br> | |||
<i>-t, --timer</i> - Задействование таймера, который измеряет интервалы времени исполнения запускаемых модулей;<br> | |||
<i>-p, --plain</i> - Упрощенный вывод (следует использовать, например, при записи в файл).<br> | |||
При запуске без параметра <i>-a</i> cve-manager работает в диалоговом режиме - на каждом шаге выводится справочная информация о возможных действиях. На первом шаге следует выбрать нужный для использования в данный момент модуль, при выборе модуля выводится справочная информация данного модуля. При начале работы с нуля следует запускать модули в том порядке, в котором они перечислены в разделе "Структура программы". | |||
cve-manager работает в диалоговом режиме | |||
== Отладка == | == Отладка == | ||
Для отладки <i>cve-manager</i> следует установить и настроить MySQL сервер:<br> | Для отладки <i>cve-manager</i> следует установить и настроить MySQL сервер:<br> | ||
1) Установить | 1) Установить MySQL сервер:<br> | ||
<code>apt-get install MySQL-server</code> | <code>apt-get install MySQL-server</code> | ||
2) | 2) Внести изменения в файл настройки MySQL сервера <i>/etc/my.cnf.d/server.cnf</i>:<br> | ||
<code>su -l -c 'service mysqld | <code>#skip-networking<br> | ||
bind-address = 127.0.0.1</code> | |||
3) Перезапустить MySQL сервер и запустить MySQL консоль:<br> | |||
<code>su -l -c 'service mysqld restart'</code><br> | |||
<code>mysql -u root</code> | <code>mysql -u root</code> | ||
4) Задать пароль пользователя MySQL с именем <i>root</i>:<br> | |||
<code>SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root-passwd');</code><br> | <code>SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root-passwd');</code><br> | ||
, где <i>root-passwd</i> - задаваемый пароль пользователя <i>root</i><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> | <code>grant all privileges on *.* to 'user-name'@'localhost' identified by 'user-passwd';</code><br> | ||
, где <i>user</i> - имя пользователя, <i>user-passwd</i>- пароль пользователя. | , где <i>user-name</i> - имя пользователя, <i>user-passwd</i>- пароль пользователя. | ||
== Ссылки == | == Ссылки == |
Версия от 18:59, 30 мая 2018
cve-manager - консольная программа для отслеживания уязвимостей программного обеспечения, имеет модульную структуру, написана на Python и C++. Распространяется по лицензии GPLv3.0.
Структура программы
cve-manager состоит из следующих модулей:
- cve-manager - диалоговый интерфейс для запуска всех остальных модулей, написан на Python;
- cve-download - осуществляет загрузку по https CVE списков и CPE словаря, написан на Python;
- cve-import - осуществляет внесение списка пакетов выбранных репозиториев alt-сервера, а также CVE списков и CPE словаря в базу данных (БД) MySQL, написан на C++;
- cpe-map - осуществляет установление соответствия названий исходных пакетов рассматриваемых репозиториев, расположенных на alt-сервере, и product из CPE словаря, написан на Python;
- cve-fixes - извлекает 'Fixes' записи и URL из метаданных всех исходных пакетов рассматриваемых репозиториев, написан на Python, использует gb-x-parse-vulns-from-changelog;
- cve-issue - осуществляет установление соответствия между данными, внесёнными в БД с помощью модулей cve-import, cpe-map, cve-fixes, а именно - записи в БД вида (<CVE идентификатор>, <название пакета>, <наличие 'Fixes' записи>), написана на Python;
- cve-monitor - предназначен для посылки запросов в БД, например получение списка всех пакетов с имеющимися незакрытыми уязвимостями.
Настройка
Параметры cve-manager определяются файлом ini-формата /etc/cve-manager/cve-manager.conf
. Данный ini-файл состоит из следующих секций:
1) database, содержащей параметры соединения с базой данных MySQL;
2) branches, содержащей метки о рассмотрении (значение 1) или не рассмотрении (значение 0) соответствующей ветви Sisyphus;
3) paths, в которой указывается путь к корневому каталогу alt-сервера, а также путь к каталогу, в который cve-download загружает входные данные и откуда cve-import их импортирует в БД.
Использование
Запуск cve-manager:
cve-manager [-h] [-a] [-t] [-p] [-d]
-h, --help - Вывод справки;
-a, --auto - Запуск модулей один за другим в автоматическом режиме;
-t, --timer - Задействование таймера, который измеряет интервалы времени исполнения запускаемых модулей;
-p, --plain - Упрощенный вывод (следует использовать, например, при записи в файл).
При запуске без параметра -a cve-manager работает в диалоговом режиме - на каждом шаге выводится справочная информация о возможных действиях. На первом шаге следует выбрать нужный для использования в данный момент модуль, при выборе модуля выводится справочная информация данного модуля. При начале работы с нуля следует запускать модули в том порядке, в котором они перечислены в разделе "Структура программы".
Отладка
Для отладки cve-manager следует установить и настроить MySQL сервер:
1) Установить MySQL сервер:
apt-get install MySQL-server
2) Внести изменения в файл настройки MySQL сервера /etc/my.cnf.d/server.cnf:
#skip-networking
bind-address = 127.0.0.1
3) Перезапустить MySQL сервер и запустить 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-name'@'localhost' identified by 'user-passwd';
, где user-name - имя пользователя, user-passwd- пароль пользователя.