Я установил Suricata, используя краткое руководство для Ubuntu 18.04.1 OS.
Я создал файл /home/user/Desktop/local.rules и добавил следующие правила:
alert tcp any any -> any any (msg:"My test rule 1";
content:"Scarlett"; nocase;)
alert tcp any any -> any any (msg:"My test rule 2";
content:"Lamborghini"; nocase;)
Я изменил часть файла /etc/suricata/suricata.yaml.
С:
af-packet:
- interface: inappropriate_interface_name
...
default-rule-path: /var.lib/suricata/rules/
rule-files:
- suricata.rules
На:
af-packet:
- interface: enp0s3
# enp0s3 is my interface name.
...
default-rule-path: /home/user/Desktop
rule-files:
- local.rules
Я запустил
nc -k -l 10000
и отправил TCP-пакет на этот сервер с полезной нагрузкой «11111».
Сначала сработает первое правило:
02/06/2020-19:40:16.802960 [**] [1:0:0] My test rule 1 [**] [Classification: (null)] [Priority: 3] {TCP} 35.222.85.5:80 -> 192.168.1.75:34590
Если я отправлю TCP-пакет с Первое правило полезной нагрузки «Ламборджини» снова сработает.
Я ожидаю, что Suricata запустит соответствующие правила в зависимости от того, содержит ли полезная нагрузка TCP-пакета последовательность байтов "Scarlett" или "Lamborghini".
Пожалуйста, помогите мне. Вы можете задать любые детали:)