Snort не определяет правила, кроме ping
Привет, у меня проблема с настройкой Snort.
Я настроил виртуальную сеть с бродячими хостами, на хосте которых работает Snort (с Barnyard2), хост Snort находится в случайном режиме, поэтому я могу читать все пакеты в 192.168.10.*/24. Все хорошо работает с PING, у меня есть правило в /etc/snort/rules/local.rules:
alert icmp any any -> $HOME_NET any (msg:"ICMP test"; sid:10000001; rev:001;)
это правило отображается правильно, и я могу видеть каждый PING между любым хостом, barnyard2 считывает вывод и сохраняет его в БД.
Проблема в том, что, когда я пытаюсь добавить другое правило, я пытался протоколировать SSH и NMAP, например:
alert tcp any any -> any any (sid:1000005; gid:1; flow:stateless; ack:0; flags:S; ttl:>220; priority:1; msg:"nmap scan"; classtype:network-scan; rev:1;)
alert tcp any any -> $HOME_NET 22 (msg:"Potential SSH Brute Force Attack"; flow:to_server; flags:S; threshold:type threshold, track by_src, count 3, seconds 60; classtype:attempted-dos; sid:2001219; rev:4; resp:rst_all; )
Я не вижу никаких предупреждений или регистрации с этими двумя правилами.
Я также использовал PulledPork для получения обновленных правил и пробовал IDSwakeup, чтобы проверить, работают ли они, но, очевидно, ничего не произошло.
Файл конфигурации /etc/snort/snort.conf, кажется, настроен правильно (без комментариев):
vagrant@vagrant-ubuntu-trusty-64:~$ cat /etc/snort/snort.conf | grep rules
var RULE_PATH /etc/snort/rules
var SO_RULE_PATH /etc/snort/so_rules
var PREPROC_RULE_PATH /etc/snort/preproc_rules
var WHITE_LIST_PATH /etc/snort/rules
var BLACK_LIST_PATH /etc/snort/rules
dynamicdetection directory /usr/local/lib/snort_dynamicrules
whitelist $WHITE_LIST_PATH/white_list.rules, \
blacklist $BLACK_LIST_PATH/black_list.rules
include $RULE_PATH/local.rules
include $RULE_PATH/snort.rules
И файлы правил, кажется, находятся в правильном месте:
vagrant@vagrant-ubuntu-trusty-64:~$ tree /etc/snort/rules/
/etc/snort/rules/
├── black_list.rules
├── iplists
│ └── default.blacklist
├── iplistsIPRVersion.dat
├── local.rules
├── snort.rules
├── test.rules
└── white_list.rules
Я также пытался очистить snort.rules и оставить только local.rules, чтобы понять, не работает ли он из-за аппаратного ограничения, но ничего не изменилось.
Я не знаю, может ли это быть из-за: - неправильной конфигурации - неправильных правил - неправильной атаки - требований к оборудованию
Вы можете мне помочь?:)
1 ответ
Первое, что нужно сделать, это проверить, действительно ли что-то еще, кроме Ping, передает через интерфейс и порт, прослушивает snort.
Для этого я предлагаю вам установить инструмент ngrep и, например, проверить HTTP-запросы. Чтобы сделать это, назовите его как 'ngrep -ed