
Легковесный движок обнаружения сетевых вторжений, захватывающий живой трафик с помощью libpcap. Обнаруживает SYN/ICMP флуды, сканирование портов и сигнатурные веб-атаки (SQLi, XSS, внедрение команд) в реальном времени.
version: 0.001
Легковесный «Сетевой движок обнаружения вторжений» захватывает живой трафик и обнаруживает реальные атаки в реальном времени (Zig0.15.2).
- Захват пакетов в реальном времени с помощью libpcap
- Собственный разбор пакетов:
- Ethernet
- IPv4
- TCP / UDP / ICMP
- Обнаружение атак:
- Обнаружение SYN-флуда
- Обнаружение ICMP-флуда
- Обнаружение сканирования портов TCP/UDP
- Ping of Death
- Обнаружение на основе сигнатур:
- SQL-инъекции (UNION, DROP, 1=1)
- Межсайтовый скриптинг (XSS)
- Инъекции команд
- Path Traversal
- Система оповещений в реальном времени
- Отслеживание статистики обнаружений
<!-- Interfaces -->
```ip link```
bash```sudo zig build run -- -i wlan0
bash```sudo zig build run -- -i <interface>
1. Используйте nping/nmap для сканирования портов
2. Используйте hping3 для SYN-флуда
3. Используйте curl/wget для генерации обычного трафика
4. Используйте iperf для сетевого трафика
5. Используйте scapy в Python для создания собственных пакетов
6. Используйте ping для ICMP.
```Вот несколько способов генерации тестового трафика```
1. Сканирование портов (проверка обнаружения):
# TCP SYN scan (должен вызвать срабатывание оповещения «TCP SYN scan»)
bash```sudo nmap -sS <PRIVATE_IP_ADDR>
bash```sudo nmap -sS <PRIVATE_IP_ADDR>
# UDP scan
bash```sudo nmap -sU PRIVATE_IP_ADDR
2. SYN-флуд (проверка обнаружения SYN-флуда):
bash```sudo hping3 -S --flood -V PRIVATE_IP_ADDR
3. ICMP-флуд (проверка обнаружения ICMP):
bash```sudo hping3 --icmp --flood PRIVATE_IP_ADDR
4. Обычный трафик (для просмотра вывода пакетов):
# Сгенерируйте HTTP-трафик
bash```curl http://example.com
# Или ping
bash```ping PRIVATE_IP_ADDR```
5. Python-скрипт для произвольных полезных нагрузок (проверка сигнатурного обнаружения):
from scapy.all import *
# Отправка пакета с шаблоном SQL-инъекции
```send(IP(dst="PRIVATE_IP_ADDR")/TCP()/b"GET /?id=1 UNION SELECT * FROM users")```
Отказ от ответственности:
Сначала запустите детектор, затем генерируйте трафик из другого терминала. Вы увидите:
- Детали пакетов, выводимые для всего трафика
- Оповещения, выводимые при обнаружении атак (порог: ~10+ портов для сканирования, 200+ для SYN-флуда)