Инструменты безопасности с открытым исходным кодом

Обслуживание базы данных ACID


По мере роста базы данных сигналов ей периодически требуется некоторое обслуживание, чтобы она не становилась слишком большой и громоздкой. Ваша статистика и графики также будут более точными, если архивировать давние сигналы с множеством ложных срабатываний. Кроме того, периодическая очистка базы ускорит обработку запросов.

Для архивирования сигналов воспользуйтесь регулятором запросов внизу основного экрана. Создайте запрос для сигналов, которые хотите архивировать, например, все сигналы, сгенерированные за последний год. Затем выберите Archive Alerts в качестве действия для запроса. Можно выборочно архивировать сигналы по дате, типу и другим критериям. Можно также выбрать простое копирование сигналов в архив или их удаление. Архивированные сигналы будут помещаться в собственную базу данных с именем, которое было задано в файле acid_conf.php в процессе конфигурирования.

Следует заархивировать все сигналы первых нескольких месяцев работы, в течение которых вы настраивали сенсоры Snort. После этого данные будут в большей степени отражать реальные атаки, а не ложные срабатывания. Неплохо также выполнять архивирование как минимум раз в год, или, возможно, ежеквартально, в зависимости от количества зарегистрированных сигналов. Как правило, нежелательно иметь в базе данных одновременно более 100000 сигналов.

Итак, теперь вы знаете, как построить законченную сеть Snort обнаружения вторжений с множеством сенсоров, протоколирующих сигналы в базу данных, которую можно применять для анализа данных и генерации отчетов. Это поможет лучше использовать данные об обнаруженных вторжениях, получить максимальную отдачу от усилий по обеспечению безопасности и запастись наглядными отчетами и графиками для демонстрации руководству. Теперь мы рассмотрим несколько средств, помогающих разобраться с результатами сканирования уязвимостей.

Флэми Тех советует:

Аккуратно используйте названия!

Будьте осторожны в разговоре со своим руководством о применении Snort или ACID на работе. Убедитесь, что руководство понимает, что это ценные программы управления, а не противозаконные наркотические вещества!

<
NPI (Nessus PHP Interface)


NPI

Автор/основной контакт: Kristofer T. Karas

Web-сайт: http://enterprise.bidmc.harvard.edu/pub/nessus-php/

Платформы: Большинство UNIX

Лицензия: GPL

Рассмотренная версия: 01a
Одна из проблем при использовании сканера уязвимостей Nessus для сканирования сетей среднего и большого размера состоит в том, что отчеты получаются весьма устрашающими. Вроде бы и форматы отчетов Nessus хороши, и перемещаться по HTML-документам легко, но, получив на анализ пару сотен страниц данных, довольно трудно выделить на фоне всего этого шума важные данные. Было бы прекрасно иметь возможность организовать результаты сканирования удобным для изучения способом. Для того чтобы анализировать результаты, следует поместить их в базу данных, а не выдавать в виде стандартного плоского файла. Желательно также иметь простой доступ к данным, например, посредством web-интерфейса. Располагая такими средствами, можно легко выделить наиболее важные данные и проанализировать изменение результатов сканирования во времени, чтобы понять, становится ли сеть более или менее защищенной.

К счастью, имеется несколько продуктов, интегрирующих Nessus с базой данных: NesQuick, Java Nessus Report Manager и Nessus PHP Interface (NPI). Для этой книги я по ряду причин выбрал NPI. Во-первых, это на самом деле продукт с открытыми исходными текстами без каких-либо коммерческих завязок. Во-вторых, он опирается на MySQL и PHP, которые мы уже применяли для других средств, таких как ACID. C помощью этих приложений NPI обеспечивает перенос данных Nessus в базу данных и их просмотр при помощи web-навигатора.

NPI по своей архитектуре аналогичен ACID. Он использует базу данных MySQL для хранения результатов и поддерживающий PHP web-сервер для просмотра и запроса результатов. На рис. 8.8 показаны логические компоненты NPI. Одно из различий между архитектурами Snort и Nessus состоит в том, что в Nessus есть две отдельные части, порождающие данные: клиент, инициирующий сканирования, и выполняющий их сервер.


В некоторых случаях они могут находиться на одной машине, но на рисунке изображены два различных физических сервера. Имеется также сервер базы данных, куда записываются данные сканирования, и web-сервер, предоставляющий интерфейс к данным. База данных и web-сервер также могут находиться на одной машине или на двух разных.


Рис. 8.8.  Логическая архитектура NPI

Рис. 8.8 иллюстрирует потоки данных и логические части системы NPI. Клиент Nessus входит на сервер Nessus для инициации сканирования некоторого объекта. Данные сохраняются на клиентской машине в собственном формате Nessus .nbe. Когда вы получаете необработанный файл, NPI выполняет процедуру его преобразования и импортирует данные в БД MySQL. После этого данные можно просматривать и запрашивать БД посредством любого web-навигатора через PHP-интерфейс. Этот способ анализа результатов сканирования имеет существенные преимущества, поэтому стоит немного потрудиться и установить NPI.


Содержание раздела