Рассмотрим добавление правила Snort на примере Icmp.
• Для начала определим ip адрес и сетевой интерфейс :
# ifconfig
• Выполним запись в конфиге :
# sudo gedit /etc/snort/snort.conf
• Приведем строчку ipvar Home_Net к виду ipvar Home_Net 192.168.0.0/21 (в моем случае)
• Нажимаем Save и закрываем файл.
• Проверим наличие тревог :
# sudo snort -A console -q -c /etc/snort/snort.conf -i ens160
и убедимся в их отсутствии.
• Выполняем добавления правила:
# sudo gedit /etc/snort/rules/local.rules
Прописываем в файле : alert icmp any any -> $HOME_NET any (msg:”Pinguy ne pinguy”; sid:1000001; rev:1; classtype:icmp-event;)
<действие_правила> <протокол> <порт> <оператор_направления>
<порт> ([мета_данные] [даные_о_содержимом_пакета]
[данные_в_заголовке] [действие_после_обнаружения])
Действия правил делятся на следующие категории:
- alert – Создать предупреждение, используя выбранный метод, и передать информацию системе журналирования.
- log – Использовать систему журналирования для записи информации о пакете.
- pass – Игнорировать пакет.
- activate – Использовать другое динамическое правило.
- dynamic – После того, как выполнится активное правило, задействуется правило с процедурой журналирования.
- drop – Отбросить пакет, используя программный брандмэуер, и передать информацию системе журналирования
- sdrop – Отбросить пакет при помощи программного брандмэуера и не использовать систему журналирования.
- reject – Используя брандмэуер, отбросить пакет в том случае, если протокол TCP, или же записать в файл журнала сообщение: ICMP порт недоступен, если пакет приходит по протоколу UDP
• Далее пингуем сами себя:
ping 192.168.0.152
• Останавливаем обмен пакетами [ Ctrl + c ]
• Теперь запустим Снорт в IDS моде и укажем показать тревоги:
sudo snort -A console -q -c /etc/snort/snort.conf -i eht160
Увидим наше сообщение, записанное в local.rules