В частности, мне нужны рекомендации по следующим вопросам:
- Какие функции следует выбрать или разработать на основе данных сетевого трафика и Suricata журналы для обучения моделей машинного обучения, которые могут точно обнаруживать как известные, так и новые угрозы в режиме реального времени, учитывая, что мой текущий набор функций позволяет модели классифицировать весь трафик как безопасный даже во время симуляции атак?
- Какие архитектуры машинного обучения и подходы к обучению существуют? лучше всего подходит для этого варианта использования адаптивной IDS, учитывая необходимость учиться на исходном наборе данных, таком как CICIDS2017, а также постоянно адаптироваться к меняющимся моделям трафика моей собственной сети и возникающим угрозам?
- Как я могу спроектировать конвейер интеграции, который автоматически извлекает данные обучения из Suricata, проверяет результаты модели машинного обучения, генерирует оптимизированные правила Suricata на основе обнаружений с высокой степенью достоверности и учитывает отзывы аналитиков для итеративного повышения точности и надежности системы с течением времени?
В настоящее время я использую эти функции. но модели видят все журналы как БЕЗОПАСНЫЕ, даже если я создаю DDoS-атаку или создаю предупреждение. Модели обучаются на данных CICIDS2017.
selected_features = [
# Flow-based features
'Flow Duration', 'Flow Bytes/s', 'Flow Packets/s', 'Total Length of Fwd Packets', 'Total Length of Bwd Packets',
# Timing features
'Flow IAT Mean', 'Flow IAT Std', 'Flow IAT Max', 'Flow IAT Min',
'Fwd IAT Total', 'Bwd IAT Total',
# Packet characteristics
'Fwd Packet Length Max', 'Fwd Packet Length Min',
'Bwd Packet Length Max', 'Bwd Packet Length Min',
'Packet Length Mean', 'Packet Length Std', 'Packet Length Variance',
# TCP flags
'SYN Flag Count', 'FIN Flag Count', 'RST Flag Count',
'PSH Flag Count', 'ACK Flag Count', 'URG Flag Count',
# Additional features
'Total Fwd Packets', 'Total Backward Packets',
'Fwd Header Length', 'Bwd Header Length',
'Active Mean', 'Active Std', 'Idle Mean',
'Init_Win_bytes_forward', 'Init_Win_bytes_backward'
]
Я пытался использовать эту функцию, но это не сработало. Я создал файл, чтобы проверить это, и использовал эти команды sudo для создания тестового файла.
hping3 -2 -p 80 -S --flood --rand-source 192.168.0.target
sudo hping3 -S -p 80 --flood 192.168.0.target
sudo hping3 -1 --flood 192.168.0.target
sudo nmap -sS 192.168.0.target
sudo nmap -sS -sV -p- 192.168.0.target
sudo nmap -sU 192.168.0.target
sudo nmap -sU 192.168.0.target
hydra -l user -P wordlist.txt 192.168.0.target ssh
hydra -l user -P wordlist.txt ftp://192.168.0.target
hydra -l admin -P wordlist.txt 192.168.0.target http-get /admin/
for i in {1…1000}; do curl http://192.168.0.target/; done
while true; do
curl http://192.168.0.target
sleep 10
done
for endpoint in / /about /contact /login; do
curl http://192.168.0.target$endpoint
sleep 5
done
Подробнее здесь: https://stackoverflow.com/questions/793 ... ng-trained