Wahmad01/SOC-Threat-Hunting-Lab
GitHub: Wahmad01/SOC-Threat-Hunting-Lab
基于 Splunk Enterprise 和 Sysmon 构建的虚拟 SOC 实验室,用于模拟网络攻击、开发检测规则并记录事件响应流程。
Stars: 1 | Forks: 0
```
# SOC Automation、Detection Engineering 与 Threat Hunting Lab
## 📌 项目概览
This project demonstrates the end-to-end security monitoring lifecycle. I built a virtual Security Operations Center (SOC) home lab to collect endpoint telemetry, simulate real-world cyber attacks, engineer custom Detection Rules using Splunk Search Processing Language (SPL), and document professional Incident Response findings.
## 🛠️ 技术栈与 Lab 规格
* **SIEM:** Splunk Enterprise (Host Machine)
* **Endpoint Telemetry:** Windows 10 VM (Subnet: `192.168.18.0/24`) + Sysmon Installed
* **Adversarial Simulation:** Kali Linux VM (Subnet: `192.168.18.0/24`)
* **Log Collection:** Splunk Universal Forwarder
## 🗺️ 项目架构
```text
[ Kali Linux (Attacker) ] ———(Bridged Network)———> [ Windows 10 (Victim) ]
|
(Universal Forwarder)
|
▼
[ Splunk Host (SIEM) ]
```
## 🎯 MITRE ATT&CK 框架映射
为了将运营指标与全球安全标准对齐,此工程实验室中模拟的对抗行为直接映射到 MITRE ATT&CK 框架矩阵:
* **战术:** 凭证访问 (Credential Access, TA0006) 与 防御规避 (Defense Evasion, TA0005)
* **技术:** 暴力破解:密码猜测 (Brute Force: Password Guessing, T1110.001) — 通过自动化的程序化网络连接循环执行。
* **技术:** 有效账户 (Valid Accounts, T1078) — 专门针对本地 endpoint 管理别名 (`vboxuser`)。
* **缓解/后果:** 账户锁定策略在暴力破解压力下于本地原生触发。
## 🛠️ 基础设施配置与深度故障排除
### 1. Endpoint 审计激活
默认情况下,目标 endpoint 平台会抑制失败的身份验证元数据存储。通过管理 shell 手动配置了本地 endpoint 安全 runtime 参数,以强制进行全局失败跟踪:
```
auditpol /set /category:"Logon/Logoff" /success:enable /failure:enable
```
### 2. 精简版 Forwarder 管道映射 (`inputs.conf`)
为了将自定义安全 channel 直接映射到中央日志基础设施,在本地 forwarder 系统参数中声明了针对性的配置矩阵:
```
[WinEventLog://Microsoft-Windows-Sysmon/Operational]
disabled = 0
index = sysmon
renderXml = true
[WinEventLog://OpenSSH/Operational]
disabled = 0
index = main
renderXml = true
[WinEventLog://Security]
disabled = 0
index = main
renderXml = true
[WinEventLog://Microsoft-Windows-Security-Auditing/Authentication]
disabled = 0
index = main
renderXml = true
```
### 3. 核心注册表保护绕过(绕过远程限制)
Windows 操作系统原生会在将数据传输到 LSASS 本地身份验证子系统之前,通过 SMB channel 丢弃未经身份验证的远程网络请求,从而抑制日志生成。为了捕获明确的入站对抗指标,实施了一项关键的核心策略覆盖:
* **注册表路径:** `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System`
* **生成的值:** `LocalAccountTokenFilterPolicy` (DWORD 32 位) 设置为 `1`
* **影响:** 中和了网络级别的身份验证丢弃过滤器,使外部 Kali Linux 节点能够将原始数据流强制推送到 endpoint 的日志子系统中。
## 🚀 对抗模拟与动态数据捕获
### 命令执行 (Kali Linux 客户端)
自动化的网络连接循环针对跨迭代密码块的 endpoint SMB 架构(`Port 445`)发起了攻击。
*遥测结果:* 触发了高密度的身份验证故障,导致明确的系统拒绝 (`NT_STATUS_LOGON_FAILURE`) 以及自主的 endpoint 冻结 (`NT_STATUS_ACCOUNT_LOCKED_OUT`)。
### 接收的 SIEM 日志 Schema
生成的安全流在 Splunk 中被成功解析,突出了危及指标的关键指标,包括 **EventID 4625** (Windows 审计失败) 和 **EventID 4740** (Endpoint 锁定)。
## 📊 检测工程与运营仪表板
### 真正的实时关联规则引擎
为了将原始数据数组转化为可操作的安全警报,在 Splunk 核心引擎内部署了高保真监控警报:
```
index=main "4625" "vboxuser" | stats count by host | where count > 3
```
### SOC 实时警报触发
警报规则持续处理传入的流。一旦模拟突破了定义的阈值,Splunk 就会在 SOC 管理终端成功触发 **严重警报**。
### 安全分析仪表板面板
构建了一个完全可操作的、可视化的多面板仪表板,以提供对持续凭证异常的集中可见性:
1. **暴力破解时间轴趋势(折线图):** 捕获按时间顺序分布的攻击频率。
2. **受攻击最多的 Endpoint(条形图):** 隔离活跃子网中被破坏的系统参数。
3. **攻击密度时间桶(柱状图):** 评估传入自动化脚本的速度峰值。
4. **实时事件源(数据矩阵表):** 为安全运营中心分析师提供原始的调查跟踪。
```
```
标签:安全运营中心, 网络映射