jordankanda330-cmd/SOC_PENTEST_HOME_LAB
GitHub: jordankanda330-cmd/SOC_PENTEST_HOME_LAB
一个融合安全运营监控与进攻性安全演练的家庭实验室,演示从 SQL 注入攻击到 Wazuh SIEM 警报触发的完整检测闭环。
Stars: 0 | Forks: 0
# SOC 检测与渗透测试家庭实验室






## 概述
本仓库记录了我为了培养在**安全运营(蓝队)**和**进攻性安全(红队)**方面的实操技能,而设计、构建和运行的家庭实验室。该实验室运行着 Wazuh SIEM 来监控多个端点,包含一个孤立的攻击平台(Kali Linux)和一个故意存在漏洞的靶机(DVWA)。
将这些串联起来的核心是**检测工程**:我不仅演示了攻击是如何生效的——我还证明了它会被记录在日志中,被 SIEM 接收,并触发映射到公认控制框架的警报。旗舰对抗演练展示了从浏览器发起 SQL 注入直至触发 Wazuh 警报的全过程。
这里执行的所有操作都是在**我拥有并控制的隔离基础设施**上进行的。参见[授权与范围](#authorization--scope)。
## 展示的技能
**蓝队 / SOC**
- SIEM 部署、代理注册和日志源接入(Wazuh)
- 检测工程 —— 构建将原始 Web 日志转化为警报的 pipeline
- 跨 Windows 和 Linux 端点的日志分析和警报分类
- 文件完整性监控(FIM)、安全配置评估(SCA)、rootkit 检测
- 将检测映射到 **PCI DSS**、**MITRE ATT&CK** 和 **CIA 三要素**
**红队 / 进攻**
- Web 应用程序漏洞利用 —— SQL 注入(身份验证绕过、基于 UNION 的提取、schema 枚举)
- 凭证访问和离线密码破解(John the Ripper)
- 无线侦察 —— 监听模式、被动 802.11 捕获
- 有条理的、证据驱动的测试及完整的文档记录
**基础设施**
- 网络分段和实验室架构设计
- 受限硬件上的虚拟化(针对 8 GB 内存的宿主机进行资源调优)
- 使用 Docker Compose 进行容器化
- Linux 管理、故障排除和配置管理
## 实验室架构
```
graph TB
ISP([Internet]) --> XB8["Xfinity XB8
ISP Gateway"] XB8 -->|WAN| ARCHER["TP-Link Archer C20
Main Router"] ARCHER -->|Port 1| HOST["💻 Acer Lab Host
Windows · i5-11400 · 32 GB
VirtualBox · Wazuh agent 002"] subgraph MGMT["🛡️ Management Network — host-only 192.168.56.0/24"] WZ["Ubuntu VM — Wazuh
Manager · Indexer · Dashboard
192.168.56.102"] ALERT["🚨 Rule 100100 · Level 12
MITRE T1059
COMMAND INJECTION DETECTED"] end subgraph ATK["⚔️ Attack Network — NAT 10.0.3.0/24"] KALI["Kali Linux 2026.1 VM
Agent 001 · kali-lab-attack
AWUS036ACS wireless adapter"] AUDITD["auditd — kernel audit
watch execve · uid=33
key=webshell_exec"] end subgraph TGT["🎯 Target Zone — Docker bridge 172.19.0.0/16 (on Kali)"] DVWA["DVWA (Docker)
127.0.0.1:4280"] DB["MariaDB 10"] DVWA --- DB end HOST -. hosts VM .-> WZ HOST -. hosts VM .-> KALI HOST -->|"host agent → manager"| WZ KALI ==>|"① exploit"| DVWA DVWA ==>|"② Apache logs (POST body not logged)"| KALI KALI -->|"③ agent → manager :1514"| WZ DVWA ==>|"④ shell_exec → execve"| AUDITD AUDITD ==>|"⑤ audit.log"| KALI KALI ==>|"⑥ audit log → manager :1514"| WZ WZ ==> ALERT classDef mgmt fill:#0b3d2e,stroke:#1abc9c,color:#fff classDef atk fill:#3d0b0b,stroke:#e74c3c,color:#fff classDef tgt fill:#3d300b,stroke:#f1c40f,color:#fff class WZ mgmt class KALI atk class DVWA,DB tgt classDef alertbox fill:#5c1d00,stroke:#ff8c00,color:#fff; class ALERT alertbox; class AUDITD atk; ``` 实验室分为三个逻辑区域 —— 承载 SIEM 流量的**管理网络**、具有互联网出口以供 Kali 平台使用的**攻击网络**,以及运行着容器化漏洞应用程序的隔离**靶区**。红色箭头描绘了旗舰对抗演练的轨迹:Kali 利用 DVWA 漏洞 ①,DVWA 的 Apache 日志在 Kali 虚拟机上被捕获 ②,Wazuh agent 将其传送到 manager 以进行检测 ③。命令注入模块通过**端点检测**对此进行了扩展:auditd 捕获注入生成的进程(④–⑥),触发仅靠访问日志路径会遗漏的 12 级 MITRE T1059 警报。 完整细节:**[实验室架构 →](docs/01-lab-architecture.md)** ## 实验室模块 | # | 模块 | 涵盖内容 | |---|--------|----------------| | 01 | **[实验室架构](docs/01-lab-architecture.md)** | 硬件、Hypervisor 选择、网络分段、虚拟机清单、资源调优 | | 02 | **[SOC 监控与检测工程](docs/02-soc-monitoring-and-detection.md)** | Wazuh 部署、代理接入以及端到端的 SQLi 检测 pipeline | | 03 | **[漏洞评估 —— SQL 注入](docs/03-vulnerability-assessment-sqli.md)** | 针对 DVWA 的完整 SQLi 攻防演练,包含 MITRE ATT&CK 映射和修复措施 | | 04 | **[无线审计](docs/04-wireless-auditing.md)** | 监听模式、隐藏 SSID 发现,以及使用 AWUS036ACS 捕获 WPA2 握手包 + 离线破解 | ## ⭐ 旗舰对抗演练:SQL 注入 —— 从攻击到检测 这次演练体现了实验室的核心目的。同一事件从 SOC 的攻防两侧进行了展示。 ### 红队 —— 攻击 `id` 参数中的一个同义反复语句迫使数据库返回了所有用户,从而确认了注入并绕过了授权逻辑:  从那里开始,演练有条不紊地进行 —— 确认列数,使用 UNION 查询提取完整的凭证库,枚举 schema,并离线破解恢复的哈希值:  所有五个密码哈希都是无盐的 MD5,在使用 `rockyou.txt` 破解时不到一秒钟即告破解。完整演示过程:**[漏洞评估 →](docs/03-vulnerability-assessment-sqli.md)** ### 蓝队 —— 检测 对于 SOC 来说有趣的部分是:官方的 DVWA 容器将 Apache 日志通过管道传输到 `stdout`,因此磁盘上没有可供监控的文件。我绑定挂载了日志目录以遮蔽符号链接,强制 Apache 写入 Wazuh agent 可以读取的真实访问日志:  一旦 agent 开始追踪该日志,注入就作为结构化的 Wazuh 警报浮出水面 —— 恶意的 URL 被解析出来,被归类为 **规则级别 7** 的 Web 攻击,并映射到 **PCI DSS 6.5**:  最终的结果是一个完整的、有据可查的闭环 —— 左侧是攻击,右侧是 SIEM 的捕获:  完整的 pipeline 构建(Docker 日志修复、`ossec.conf` 配置、使用 `wazuh-logtest` 进行规则验证):**[SOC 监控与检测 →](docs/02-soc-monitoring-and-detection.md)** ## 工具与技术 | 类别 | 技术栈 | |----------|-------| | **SIEM / 监控** | Wazuh 4.x(manager、indexer、dashboard)、Wazuh 代理 | | **进攻** | Kali Linux 2026.1、John the Ripper、aircrack-ng 套件、curl | | **靶机** | DVWA、Apache、MariaDB 10 | | **基础设施** | Oracle VirtualBox、Docker & Docker Compose、TP-Link Archer C20、Netgear Nighthawk CAX30、MikroTik SXT Lite、Xfinity XB8 | | **硬件** | AWUS036ACS (RTL8811AU) 无线网卡 | | **框架** | MITRE ATT&CK、OWASP Top 10、PCI DSS、CIA 三要素 | ## 仓库结构 ``` soc-pentest-home-lab/ ├── README.md ├── docs/ │ ├── 01-lab-architecture.md │ ├── 02-soc-monitoring-and-detection.md │ ├── 03-vulnerability-assessment-sqli.md │ └── 04-wireless-auditing.md └── evidence/ ├── sqli/ # SQL injection attack chain ├── detection/ # Wazuh detection-engineering proof └── wireless/ # Wireless capture, WPA handshake, crack result ``` ## 授权与范围 此处记录的每一个操作都是在**我个人拥有并运营的系统**上、在**隔离的实验室网络**中进行的,仅用于**教育和技能培养**。任何第三方系统均不在范围内。 DVWA(Damn Vulnerable Web Application)是为安全培训而构建的故意不安全的软件。调查结果中的严重性评级反映了这些问题在生产环境中将带来的同等风险 —— 它们并非针对真实系统的声明。 ## 关于 由 **Jordan Kanda** 构建并维护 —— 正在寻求 **SOC 分析师 / 安全分析师**职位,将结构工程背景和面向客户的沟通风格带入安全工作中。目前正在攻读 **Google 网络安全专业证书**(共 9 门课程中的第 7 门 —— 使用 Python 进行自动化)。 🔗 GitHub:[github.com/jordankanda330-cmd](https://github.com/jordankanda330-cmd)
ISP Gateway"] XB8 -->|WAN| ARCHER["TP-Link Archer C20
Main Router"] ARCHER -->|Port 1| HOST["💻 Acer Lab Host
Windows · i5-11400 · 32 GB
VirtualBox · Wazuh agent 002"] subgraph MGMT["🛡️ Management Network — host-only 192.168.56.0/24"] WZ["Ubuntu VM — Wazuh
Manager · Indexer · Dashboard
192.168.56.102"] ALERT["🚨 Rule 100100 · Level 12
MITRE T1059
COMMAND INJECTION DETECTED"] end subgraph ATK["⚔️ Attack Network — NAT 10.0.3.0/24"] KALI["Kali Linux 2026.1 VM
Agent 001 · kali-lab-attack
AWUS036ACS wireless adapter"] AUDITD["auditd — kernel audit
watch execve · uid=33
key=webshell_exec"] end subgraph TGT["🎯 Target Zone — Docker bridge 172.19.0.0/16 (on Kali)"] DVWA["DVWA (Docker)
127.0.0.1:4280"] DB["MariaDB 10"] DVWA --- DB end HOST -. hosts VM .-> WZ HOST -. hosts VM .-> KALI HOST -->|"host agent → manager"| WZ KALI ==>|"① exploit"| DVWA DVWA ==>|"② Apache logs (POST body not logged)"| KALI KALI -->|"③ agent → manager :1514"| WZ DVWA ==>|"④ shell_exec → execve"| AUDITD AUDITD ==>|"⑤ audit.log"| KALI KALI ==>|"⑥ audit log → manager :1514"| WZ WZ ==> ALERT classDef mgmt fill:#0b3d2e,stroke:#1abc9c,color:#fff classDef atk fill:#3d0b0b,stroke:#e74c3c,color:#fff classDef tgt fill:#3d300b,stroke:#f1c40f,color:#fff class WZ mgmt class KALI atk class DVWA,DB tgt classDef alertbox fill:#5c1d00,stroke:#ff8c00,color:#fff; class ALERT alertbox; class AUDITD atk; ``` 实验室分为三个逻辑区域 —— 承载 SIEM 流量的**管理网络**、具有互联网出口以供 Kali 平台使用的**攻击网络**,以及运行着容器化漏洞应用程序的隔离**靶区**。红色箭头描绘了旗舰对抗演练的轨迹:Kali 利用 DVWA 漏洞 ①,DVWA 的 Apache 日志在 Kali 虚拟机上被捕获 ②,Wazuh agent 将其传送到 manager 以进行检测 ③。命令注入模块通过**端点检测**对此进行了扩展:auditd 捕获注入生成的进程(④–⑥),触发仅靠访问日志路径会遗漏的 12 级 MITRE T1059 警报。 完整细节:**[实验室架构 →](docs/01-lab-architecture.md)** ## 实验室模块 | # | 模块 | 涵盖内容 | |---|--------|----------------| | 01 | **[实验室架构](docs/01-lab-architecture.md)** | 硬件、Hypervisor 选择、网络分段、虚拟机清单、资源调优 | | 02 | **[SOC 监控与检测工程](docs/02-soc-monitoring-and-detection.md)** | Wazuh 部署、代理接入以及端到端的 SQLi 检测 pipeline | | 03 | **[漏洞评估 —— SQL 注入](docs/03-vulnerability-assessment-sqli.md)** | 针对 DVWA 的完整 SQLi 攻防演练,包含 MITRE ATT&CK 映射和修复措施 | | 04 | **[无线审计](docs/04-wireless-auditing.md)** | 监听模式、隐藏 SSID 发现,以及使用 AWUS036ACS 捕获 WPA2 握手包 + 离线破解 | ## ⭐ 旗舰对抗演练:SQL 注入 —— 从攻击到检测 这次演练体现了实验室的核心目的。同一事件从 SOC 的攻防两侧进行了展示。 ### 红队 —— 攻击 `id` 参数中的一个同义反复语句迫使数据库返回了所有用户,从而确认了注入并绕过了授权逻辑:  从那里开始,演练有条不紊地进行 —— 确认列数,使用 UNION 查询提取完整的凭证库,枚举 schema,并离线破解恢复的哈希值:  所有五个密码哈希都是无盐的 MD5,在使用 `rockyou.txt` 破解时不到一秒钟即告破解。完整演示过程:**[漏洞评估 →](docs/03-vulnerability-assessment-sqli.md)** ### 蓝队 —— 检测 对于 SOC 来说有趣的部分是:官方的 DVWA 容器将 Apache 日志通过管道传输到 `stdout`,因此磁盘上没有可供监控的文件。我绑定挂载了日志目录以遮蔽符号链接,强制 Apache 写入 Wazuh agent 可以读取的真实访问日志:  一旦 agent 开始追踪该日志,注入就作为结构化的 Wazuh 警报浮出水面 —— 恶意的 URL 被解析出来,被归类为 **规则级别 7** 的 Web 攻击,并映射到 **PCI DSS 6.5**:  最终的结果是一个完整的、有据可查的闭环 —— 左侧是攻击,右侧是 SIEM 的捕获:  完整的 pipeline 构建(Docker 日志修复、`ossec.conf` 配置、使用 `wazuh-logtest` 进行规则验证):**[SOC 监控与检测 →](docs/02-soc-monitoring-and-detection.md)** ## 工具与技术 | 类别 | 技术栈 | |----------|-------| | **SIEM / 监控** | Wazuh 4.x(manager、indexer、dashboard)、Wazuh 代理 | | **进攻** | Kali Linux 2026.1、John the Ripper、aircrack-ng 套件、curl | | **靶机** | DVWA、Apache、MariaDB 10 | | **基础设施** | Oracle VirtualBox、Docker & Docker Compose、TP-Link Archer C20、Netgear Nighthawk CAX30、MikroTik SXT Lite、Xfinity XB8 | | **硬件** | AWUS036ACS (RTL8811AU) 无线网卡 | | **框架** | MITRE ATT&CK、OWASP Top 10、PCI DSS、CIA 三要素 | ## 仓库结构 ``` soc-pentest-home-lab/ ├── README.md ├── docs/ │ ├── 01-lab-architecture.md │ ├── 02-soc-monitoring-and-detection.md │ ├── 03-vulnerability-assessment-sqli.md │ └── 04-wireless-auditing.md └── evidence/ ├── sqli/ # SQL injection attack chain ├── detection/ # Wazuh detection-engineering proof └── wireless/ # Wireless capture, WPA handshake, crack result ``` ## 授权与范围 此处记录的每一个操作都是在**我个人拥有并运营的系统**上、在**隔离的实验室网络**中进行的,仅用于**教育和技能培养**。任何第三方系统均不在范围内。 DVWA(Damn Vulnerable Web Application)是为安全培训而构建的故意不安全的软件。调查结果中的严重性评级反映了这些问题在生产环境中将带来的同等风险 —— 它们并非针对真实系统的声明。 ## 关于 由 **Jordan Kanda** 构建并维护 —— 正在寻求 **SOC 分析师 / 安全分析师**职位,将结构工程背景和面向客户的沟通风格带入安全工作中。目前正在攻读 **Google 网络安全专业证书**(共 9 门课程中的第 7 门 —— 使用 Python 进行自动化)。 🔗 GitHub:[github.com/jordankanda330-cmd](https://github.com/jordankanda330-cmd)
标签:CISA项目, Wazuh, x64dbg, 安全运营, 扫描框架, 版权保护, 网络安全, 隐私保护