Madumere19/snort-ids-intrusion-detection-system

GitHub: Madumere19/snort-ids-intrusion-detection-system

本项目在虚拟化环境中实现并评估基于 Snort 与自定义规则的入侵检测系统,解决网络攻击实时监测与告警问题。

Stars: 0 | Forks: 0

# 🛡️ 基于 Snort 的入侵检测系统 (IDS) ## 概述 本项目在虚拟化网络环境中实现并评估一个 **基于 Snort 的入侵检测系统 (IDS)**。 该系统使用 **自定义 Snort 规则** 和实时流量分析来检测多种网络攻击。 ## 目标 * 在虚拟实验环境中配置 Snort IDS * 开发用于攻击检测的自定义规则 * 使用 Kali Linux 模拟攻击 * 评估检测性能 ## 系统架构 * **攻击者:** Kali Linux * **目标/IDS:** 运行 Snort 的 Ubuntu * **网络:** 内部网络 (192.168.100.0/24) ## 工具与技术 * Snort IDS * Kali Linux * Nmap * hping3 * VirtualBox ## 检测到的攻击 | 攻击类型 | 使用的工具 | 状态 | | -------- | ---------- | ---- | | SYN 扫描 | Nmap (-sS) | ✅ 已检测 | | NULL 扫描 | Nmap (-sN) | ✅ 已检测 | | FIN 扫描 | Nmap (-sF) | ✅ 已检测 | | XMAS 扫描 | Nmap (-sX) | ✅ 已检测 | | ACK 扫描 | Nmap (-sA) | ✅ 已检测 | | ICMP 泛洪 | hping3 | ✅ 已检测 | | Ping 扫描 | Nmap | ✅ 已检测 | ## 关键特性 * 用于扫描检测的自定义 Snort 规则 * 基于阈值的 ICMP 泛洪检测 * 实时告警日志记录 * 实验性攻击模拟 ## 结果 * 对测试的攻击场景实现 100% 检测 * 有效识别侦察与 DoS 攻击 * 阈值调整减少了告警噪音 ## 截图 flood alert kali s_f s_x s_A ## 使用方法 1. 安装 Snort: ``` sudo apt install snort ``` 2. 添加自定义规则: ``` sudo nano /etc/snort/rules/custom.rules ``` 3. 运行 Snort: ``` sudo snort -A fast -i enp0s3 -c /etc/snort/snort.conf ``` 4. 从 Kali 模拟攻击: ``` sudo nmap -sS sudo hping3 --icmp --flood ``` ## 限制 * 基于签名的检测(无法检测未知攻击) * 需要调整以减少误报 ## 后续改进 * 基于机器学习的 IDS * 与 SIEM 系统集成 * 真实环境部署测试 ## 👨‍💻 作者 Chibuzo Madumere
标签:ACK扫描, Clean Code, CTI, DoS防护, FIN扫描, hping3, ICMP Flood, IP 地址批量处理, Nmap, NULL扫描, PE 加载器, Ping Sweep, SYN扫描, VirtualBox, Web报告查看器, XMAS扫描, 入侵检测系统, 反取证, 域名解析, 安全数据湖, 安全评估, 实验环境, 网络安全, 网络攻击检测, 自定义规则, 虚拟化, 虚拟驱动器, 重定向日志, 阈值检测, 防御绕过, 隐私保护