mari-ww/port-scan-suricata

GitHub: mari-ww/port-scan-suricata

基于 Suricata 和 Wireshark 的端口扫描检测实验项目,通过自定义 IDS 规则与数据包分析实现 SYN 扫描的自动告警与手动验证。

Stars: 0 | Forks: 0

# 🚨 使用 Suricata 进行端口扫描检测 [![状态](https://img.shields.io/badge/status-completed-brightgreen)]() [![级别](https://img.shields.io/badge/level-beginner-blue)]() [![工具](https://img.shields.io/badge/tools-Wireshark%20%7C%20Suricata-purple)]() ## 📦 port-scan-suricata/ ``` ├── images/ <- Analysis screenshots │ ├── 1-wireshark-syn-scan.png │ ├── 2-wireshark-packet.png │ └── 3-suricata-alert.png ├── pcap_files/ <- Analyzed `.pcap` files │ └── portscan.pcap ├── suricata_rules/ <- Custom Suricata rules │ └── local.rules └── README.md <- This file ``` ## 🧠 目标 使用 **Suricata** 和 **Wireshark** 检测并分析 **端口扫描(Port Scan)** 攻击。 目标是识别通常与端口扫描活动相关的网络流量模式,使用 Suricata 生成自动告警,并通过 Wireshark 数据包分析手动验证检测结果。 ## 🔍 背景 本项目使用 **Nmap** 模拟了一次 **端口扫描攻击** 以生成网络流量,随后使用 **Wireshark** 对其进行分析,并由 **Suricata** 自动检测。 目的是了解如何使用这些工具来监控网络并识别可疑活动。 ## 📸 分析证据 ### 🖼️ 1. 无响应的 SYN 数据包(`SYN-ACK`) * 观察到多个启用了 `SYN` 标志的数据包。 * 未收到 `SYN-ACK` 响应,表明其目的仅是探测可用端口。 * 此行为是 **SYN scan** 的典型特征,这是一种隐蔽的端口扫描技术。 ### 🖼️ 2. SYN 数据包详情 * 标志:`SYN = 1`, `ACK = 0` * 此数据包代表 TCP 连接尝试的初始阶段。 * 该数据包用于探测端口,而无需完成 TCP 握手。 ### 🖼️ 3. Suricata 扫描告警 * Suricata 基于 **自定义检测规则** 生成的告警。 * Suricata 识别出攻击行为,并生成了分类为 **"SYN Port Scan Detected"** 的告警。 * 检测特征码配置在 `local.rules` 文件中。 ## ✅ 结论 通过两种不同的方法检测到了 **端口扫描(Port Scan)** 活动: 1. **手动分析:** 通过分析 Wireshark 中的数据包,发现了重复的 `SYN` 数据包,且未完成 TCP 连接。 2. **自动检测:** Suricata 根据 `local.rules` 中配置的 **自定义规则** 生成了告警,检测到了可疑的扫描行为。 📌 检测 **端口扫描** 是 SOC 分析师的基础技能之一。及早识别可以支持 **恶意 IP 封锁**、**生成告警**,以及在发生更高级的攻击之前采取预防措施。 ## 🧰 使用到的工具 * 🕵️ **Wireshark** - 网络数据包捕获与流量分析 * 🔥 **Suricata**(IDS 模式)- 可疑行为检测与告警生成 * 📁 PCAP 文件:`portscan.pcap` - 网络流量捕获文件
标签:CTI, Metaprompt, Suricata, Wireshark, 句柄查看, 安全运营, 扫描框架, 插件系统, 现代安全运营, 端口扫描检测, 网络安全, 隐私保护