Назад | Перейти на главную страницу

Пользовательские правила для Snort

Мне нужно разрешить определенный трафик, который блокируется snort, например, ICMP с определенного адреса. Как я могу это сделать?

В основном это можно сделать двумя способами.

  • suppress правило - отключает оповещение об определенном SID в зависимости от источника или назначения.
  • pass правило - разрешить передачу трафика, соответствующего правилу без проверка на соответствие любым другим правилам

Правила прохождения
Полезно для игнорирования трафика от хостов, которые, как известно, генерируют множество предупреждений, но также считаются надежными. Инструменты оценки уязвимости очень популярны. Они написаны в форме любого другого правила предупреждений, за исключением того, что вместо предупреждения используется оператор pass. Если мы хотим разрешить весь трафик от одного из них, мы могли бы использовать:

pass ip 10.10.8.200/32 any <> any any (msg: "Ignore all Network Health monitoring"; sid: 1000013;)

Это очень простое правило, которое будет игнорировать любой IP-трафик с адресом источника «10 .10.8.200», когда любой порт источника будет направлен на любой адрес на любом порту назначения.

Подавить правила
Они в основном используются для фильтрации ложных срабатываний. Они требуют от администратора указать дополнительную информацию о правиле, например gen_id и sig_id, а также условия, при которых следует игнорировать. Допустим, у нас есть система, которая регулярно выполняет множество обратных поисков в DNS и поэтому генерирует множество запросов NXDOMAIN. Это часто может указывать на сетевую разведку, но в этом случае это ожидаемое поведение. Мы могли проигнорировать это, используя:

suppress gen_id 1, sig_id 13948, track by_dst, ip 10.10.8.240

Для стандартных правил «предупреждений» gen_id всегда равен 1, SID, который мы хотим игнорировать, - 13948, а хост, выполняющий все эти поиски, - '10 .10.8.240 '.

Конкретный запрос
В ситуации, которую вы выкладываете, у вас должно получиться что-то вроде:

pass icmp 10.10.8.200/32 any <> any any (msg: "Ignore all ICMP Traffic by Host"; sid: 1000087;)

Как и в приведенном выше правиле на основе IP, это должно игнорировать любой входящий трафик ICMP. из «10 .10.8.200», независимо от пункта назначения.

Дополнительные ресурсы

Эти правила, конечно, могут быть более сложными, но вы захотите прочитать дополнительную документацию по конкретным особенностям. Лучше всего просто выполнить несколько поисков в Google и просмотреть их, но я нашел полезную документацию (в произвольном порядке):

Отличная информация, что, если я просто хочу заблокировать один порт?

Я хочу сделать что-то вроде

suppress gen_id 1, sig_id 1394, track by_dst, ip 10.182.196.135:925

при этом 925 - мой внутренний порт для smtp. Электронные письма, проходящие через smtp, выводят множество предупреждений, которые мне не нужно видеть.

Может ли это работать с портом на конце?