khoiduc12345-netizen/C2-Threat-Defense-Platform
GitHub: khoiduc12345-netizen/C2-Threat-Defense-Platform
面向防御教育的C2威胁检测与阻断平台,整合Snort IDS/IPS、Zeek遥测和Python自动化规则引擎,在隔离网络中实现从流量检测到自动阻断的完整防御工作流。
Stars: 0 | Forks: 0
# C2 威胁防御平台
一个适用于小型企业网络模型的安全、可复现的 C2/恶意软件防御平台。该平台强制 Windows 端点通过 Ubuntu 网关,将不安全的类互联网流量重定向至 INetSim/模拟 C2,使用 Snort IDS 和 Zeek 检测活动,通过 NFQUEUE 利用 Snort IPS 阻断选定的数据流,并使用 Python 引擎从 Zeek 遥测数据生成 Snort 规则。
## 该平台展示的内容
- Ubuntu 作为网关、防火墙、路由器、NAT/DNAT 节点、Snort IDS/IPS 主机、Zeek 传感器和 Python 自动化运行器。
- Windows 客户端流量被强制通过网关,无直接互联网路径。
- Kali/INetSim 作为安全的模拟互联网/模拟 C2 目标。
- Wazuh/Sysmon 端点可见性作为补充层。
- IDS 与 IPS 行为对比:
- IDS 仅发出警报但不进行阻断。
- IPS 仅在流量通过 NFQUEUE 且匹配的规则动作为 `block`/`drop` 时才进行阻断。
- Zeek 对 HTTP/DNS/TLS/连接元数据的可见性,包括针对被阻断的高端口 C2 尝试的 L7 前通知。
- 从 Zeek 日志自动生成 Python 规则,用于“先观察,后阻断”的工作流。
## 系统角色
| 角色 | 默认 IP | 用途 |
| --- | --- | --- |
| Windows 客户端 | `192.168.100.20/24` | 生成良性测试和受控恶意软件/C2 行为的端点 |
| Ubuntu 网关 | `192.168.100.10`, `10.10.10.10` | 防火墙、路由器、Snort、Zeek、Python 自动规则引擎 |
| Kali/INetSim | `10.10.10.20` | 模拟互联网/模拟 C2 DNS/HTTP 服务 |
| Wazuh Server | 在 `.env` 中设置 | 端点日志收集和未来的主动响应 |
## 快速开始
```
git clone https://github.com/ThanhTuanjk/c2-threat-defense-platform.git
cd c2-threat-defense-platform
cp .env.example .env
# 编辑 .env 以匹配你的 VM 接口和 IP 地址。
sudo bash install/check_prereqs.sh
sudo bash install/deploy_ubuntu_gateway.sh
```
在 Ubuntu 上启动主平台终端:
```
sudo bash ~/c2-defense-lab/automation/start_zeek_python.sh
sudo bash ~/c2-defense-lab/automation/start_snort_ips.sh
```
仅 IDS 演示:
```
sudo bash ~/c2-defense-lab/automation/start_snort_ids.sh
```
Windows 测试示例:
```
nslookup google.com 10.10.10.20
curl.exe -v --max-time 8 -H "Host: c2-test.lab" -A "Go-http-client/1.1" "http://10.10.10.20/beacon.php?test=ids"
Test-NetConnection 10.10.10.20 -Port 56003
```
## 文档导览
- [架构](docs/ARCHITECTURE.md)
- [网络拓扑](docs/NETWORK_TOPOLOGY.md)
- [Ubuntu 网关设置](docs/SETUP_UBUNTU_GATEWAY.md)
- [Windows 客户端设置](docs/SETUP_WINDOWS_CLIENT.md)
- [Kali INetSim 设置](docs/SETUP_KALI_INETSIM.md)
- [Wazuh Server 设置](docs/SETUP_WAZUH_SERVER.md)
- [IDS 操作手册](docs/RUNBOOK_IDS.md)
- [IPS 操作手册](docs/RUNBOOK_IPS.md)
- [测试计划](docs/TEST_PLAN.md)
- [故障排除](docs/TROUBLESHOOTING.md)
- [安全说明](docs/SECURITY_NOTES.md)
- [当前项目状态](docs/PROJECT_STATUS.md)
## 仓库布局
```
automation/ Start scripts and Python auto-rule engine
config/ Snort and Zeek configuration used by the platform
docs/ Architecture, setup, runbooks, test plan
examples/ Safe test commands and expected evidence
install/ Deployment helpers for the Ubuntu gateway
rules/ Local Snort IDS/IPS rules and auto-rule examples
scripts/ Gateway firewall mode scripts
tools/ Pretty log viewers and Snort rule rebuild tool
```
## 安全边界
本平台专为受控防御教育和企业级验证而设计。请勿在隔离的 VM 网络之外运行真实的恶意软件。在未先进行脱敏处理的情况下,请勿发布运行时日志或数据包捕获。
标签:IP 地址批量处理, 自动化响应, 逆向工具