Snort: обнаружение сетевых атак


Snort — один из популярных комплексов для обнаружения сетевых атак. ОС: UNIX-like, Windows. Лицензия: GNU GPL. Сайт: www.snort.org/


Сетевые приложения — это очень большая часть из всех программ open source. При этом большую часть сетевого ПО составляют защитные программные комплексы. Интернет — среда агрессивная, и для сисадмина специальные меры по защите родных локальных сетей для любого администратора лишними не бывают.

В свою очередь программное обеспечение для безопасности сетей тоже можно разделить на отдельные категории. Одной из таких категорий являются сетевые системы распознавания атак (Net Intrusion Detection Systems — NIDS). Такие системы позволяют обнаружить попытки вторжения в локальную сеть, являясь своего рода охранной сигнализацией для бдительного администратора, которая оповещает об атаке. Соответственно IDS используются в комплексе с другими системами и средствами защиты, как файерволы, серверные антивирусы и пр.

Одной из самых известных систем NIDS является Snort. Эта система с открытым исходным кодом, разрабатываемая компанией Sourcefire, ставшей в 2013-ом году частью корпорации Cisco Systems. Данная NIDS постоянно развивается уже более десяти лет.

Программа предназначена не только для UNIX-систем. С сайта проекта можно скачать версию для Windows. Очень часто Snort входит в комплект ПО для прошивок с открытым исходным кодом для маршрутизаторов беспроводных сетей, как, например, прошивка OpenWRT.

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

Snort — консольный инструмент сисадмина и имеет несколько режимов работы. Начальный режим — это режим анализа пакетов, в котором программа просто читает пакеты, приходящие из сети, и выводит их на экран терминала. С помощью различных опций можно фильтровать этот вывод, включая или выключая показ заголовков IP/TCP/UDP/ICMP-пакетов, информации канального уровня, данных пакетов.

Но основной режим — это режим обнаружения сетевых вторжений. Snort работает с предварительно заданными шаблонами для определения нежелательного трафика, которые называются правилами (rules). Эти правила позволяют определить, какой трафик в сети является вредоносным, а какой — нет. Правила нужно периодически обновлять, и на официальном сайте Snort регулярно публикуются архивы правил наравне с публикациями новых версий самой программы.

При этом правила имеют простой синтаксис, который по силам выучить среднестатистическому сисадмину, чтобы писать уже собственные фильтры для сетевого трафика. Срабатывание правила может включить тревогу, включить запись событий в журнал, или же игнорированию события. Опции правил позволяют определять содержимое и формат пакетов, а также указать выводимое сообщение. Например, так выглядит правило, которое поднимает тревогу, если кто-то «пингует» сеть.

alert icmp any any -> 192.168.1.1 any (msg: «Алярма! Нас атакует ping!»;)

Snort имеет режим журналирования, который позволяет записывать поток информации не только в журнал, но и в базы данных — MySQL или PostgreSQL. Это полезно при проведении анализа за определенный интервал времени. Также это даёт возможность приделать к Snort для большей наглядности веб-интерфейс. Примером такого веб-интерфейса является веб-консоль базового анализа вторжений BASE (Basic Analysis and Security Engine).

Рис. Консоль базового анализа вторжений BASE
Рис. Консоль базового анализа вторжений BASE

BASE — это по сути веб-сервис:

Ⓜ ⬇ 07-02-2014