HYDRAkid3/Adversary-Driven-SOC-Monitoring-with-Suricata-IDS
GitHub: HYDRAkid3/Adversary-Driven-SOC-Monitoring-with-Suricata-IDS
一个基于 Suricata 7 的双网卡内联 IDS 实验室,在隔离虚拟环境中模拟真实攻击并验证检测规则与 SOC 监控流程。
Stars: 1 | Forks: 0
# 使用 Suricata IDS 进行对手驱动的 SOC 监控
### 内联网络检测 | 检测工程 | 侦察 + Web 攻击验证
## 概述
本项目演示了在受控虚拟实验室环境中构建的完全隔离、双宿主 Suricata IDS 部署。
本实验室的目标是:
- 将 Suricata 部署为内联路由检测网关
- 强制执行子网间流量检测
- 验证对侦察活动的检测
- 检测 SQL 注入和 XSS 攻击
- 使用 fast.log 和结构化 eve.json 输出分析警报
- 展示实用的检测工程技能
本实验室模拟了真实世界的 SOC 监控边界。
# 实验室网络架构
以下是本实验室中使用的实际网络架构:

## 网络设计摘要
使用 VirtualBox 创建了两个隔离的内部网络:
- **SOC-IN** → 192.168.100.0/24(攻击者网络)
- **SOC-OUT** → 192.168.200.0/24(受害者网络)
Suricata 作为双宿主内联路由网关运行:
- enp0s3 → 192.168.100.1 (SOC-IN)
- enp0s8 → 192.168.200.1 (SOC-OUT)
所有从 Kali (192.168.100.10) 到 DVWA (192.168.200.10) 的流量必须经过 Suricata。
子网之间不存在直接的通信路径。
# 设计原则
✔ 双宿主路由网关
✔ 强制检测边界
✔ 第 3 层分段
✔ 第 4 层侦察检测
✔ 第 7 层负载检测
✔ IDS 模式(仅警报,不阻断)
✔ 确定性攻击验证
所有从攻击者到目标的流量都通过检测引擎。
# 技术栈
| 组件 | 用途 |
|------------|----------|
| VirtualBox | 网络分段 |
| Kali Linux | 攻击机 |
| Ubuntu Server | 目标主机 |
| DVWA | 易受攻击的 Web 应用程序 |
| Suricata 7.x | 入侵检测系统 |
| ET Open Rules | 社区检测基线 |
| Custom Rules | 实验室特定检测逻辑 |
| tcpdump | 数据包级检测 |
| eve.json | 结构化 SOC 日志 |
# 验证的攻击场景
## 侦察
- ICMP 主机发现
- Nmap SYN 扫描
- TCP Connect 扫描
- 服务枚举
检测结果:
- SYN 扫描警报
- TCP 标志异常
- 可疑扫描行为
## SQL 注入
- 基于布尔的注入
- 基于 UNION 的注入
检测结果:
- 自定义 SQLi 规则
- ET Open Web 攻击签名
- 结构化 JSON HTTP 元数据日志
## 跨站脚本攻击 (XSS)
- 通过 DVWA 进行脚本注入
- 反射型 XSS 负载测试
检测结果:
- 自定义 XSS 签名
- HTTP 负载检测
- 结构化 eve.json 警报记录
# 检测工程亮点
本实验室整合了:
### ET Open 基线规则
提供广泛检测覆盖范围的社区威胁情报。
### 自定义本地规则
专门开发用于:
- 确定性地验证检测
- 展示签名编写能力
- 检查 HTTP 负载内容
- 模拟 SOC 规则调优
示例:
```
alert tcp any any -> 192.168.200.10 80 (msg:"RAW SQLI UNION DETECTED"; content:"UNION"; nocase; sid:1002001; rev:1;)
```
# 验证方法
每次攻击都在多个层级进行了验证:
### 数据包层
- 在入口和出口接口上运行 tcpdump
- 确认 HTTP 负载可见性
- 观察到 SYN 数据包
### 警报层
- fast.log 验证
- SID 确认
- 签名验证
### 结构化日志层
- eve.json 检查
- HTTP 元数据提取
- 源/目标关联
这确认了完整的检测管道完整性。
# 证据结构
所有验证截图均组织在以下目录下:
```
evidence/screenshots/
```
按类别分类:
- 00_Architecture(架构)
- 01_Infrastructure_Setup(基础设施设置)
- 02_Rule_Engine_Validation(规则引擎验证)
- 03_Network_Path_Validation(网络路径验证)
- 04_Recon_Scan(侦察扫描)
- 05_SQLi_Case_Study(SQLi 案例研究)
- 06_XSS_Case_Study(XSS 案例研究)
# 演示的安全概念
- 网络分段强制执行
- 内联 IDS 架构
- 双接口路由
- 东西向流量检测
- 基于负载的检测
- 侦察检测工程
- Web 攻击签名验证
- SOC 式日志分析
- 结构化事件日志
# 项目成果
Suricata IDS 检测实验室成功演示了:
✔ 正确的内联 IDS 部署
✔ 跨分段网络的完整流量可见性
✔ 侦察检测
✔ SQL 注入检测
✔ XSS 检测
✔ ET Open 集成
✔ 自定义签名工程
✔ 结构化警报验证
本实验室反映了适用于 SOC 和网络安全角色的实用蓝队和检测工程技能。
# 作者
Harshit Krishna
特拉华大学 网络安全硕士
标签:AMSI绕过, CISA项目, Cloudflare, DOE合作, DVWA, MITRE ATT&CK, PB级数据处理, SOC监测, Suricata, SYN扫描, Ubuntu Server, VirtualBox, XSS攻击, 入侵检测系统, 内网分段, 协议分析, 域名解析, 威胁检测, 安全数据湖, 安全运维, 实验室环境, 密码管理, 应用层攻击, 插件系统, 数据包验证, 权限提升, 漏洞模拟, 现代安全运营, 网络安全, 网络攻防, 路由网关, 隐私保护