balaram4762/Splunk-SIEM-Lab
GitHub: balaram4762/Splunk-SIEM-Lab
一个模拟 SOC 环境的家庭实验室项目,使用 Splunk 检测来自 Kali Linux 的攻击并编写专业事件报告,帮助学习者实践 SIEM 检测工程全流程。
Stars: 0 | Forks: 0
# 🛡️ Splunk SIEM 实验环境 — 攻击模拟与检测工程
## 📌 项目概述
本项目模拟了一个真实的 SOC(安全运营中心)环境,其中:
- 一台 **Kali Linux 虚拟机** 作为攻击机
- 一台 **Windows 11** 机器运行 **Splunk Enterprise** 作为 SIEM
- 从 Kali 发起真实攻击 → 在 Splunk 中进行检测和告警
- 事件报告的撰写方式与真实的 SOC 分析师完全一致
## 🧰 工具与技术
| 工具 | 用途 |
|------|---------|
| **Splunk Enterprise** | SIEM — 日志收集、检测、告警 |
| **Kali Linux (VirtualBox VM)** | 攻击机 — 攻击模拟 |
| **Nmap 7.99** | 网络侦察扫描 |
| **Hydra v9.7** | 暴力破解密码攻击 |
| **Metasploit Framework v6.4** | SMB 漏洞利用尝试 |
| **Windows Event Logs** | Splunk 的日志源 |
| **MITRE ATT&CK Framework** | 攻击技术映射 |
| **VirtualBox** | 虚拟化平台 |
## 🗺️ 项目阶段
### ✅ 阶段 1 — Splunk 设置
- 在 Windows 11 上安装了 Splunk Enterprise
- 配置了 Windows 事件日志数据输入(Security、System、Application)
- 验证了日志收集 — 收集了 1,182+ 条事件
### ✅ 阶段 2 — 攻击模拟(来自 Kali Linux)
| # | 攻击 | 工具 | MITRE 技术 | 目标 |
|---|--------|------|----------------|--------|
| 1 | 网络端口扫描 | Nmap | T1046 — 网络服务扫描 | Windows 11 (192.168.1.39) |
| 2 | 暴力破解登录 | Hydra | T1110 — 暴力破解 | SMB 端口 445 |
| 3 | SMB 漏洞利用尝试 | Metasploit | T1059 — 命令执行 | MS17-010 (EternalBlue) |
### ✅ 阶段 3 — 检测工程(Splunk 告警)
| # | 告警名称 | 检测内容 | MITRE |
|---|-----------|---------|-------|
| 1 | 暴力破解登录检测 | 同一账户 5 次以上失败登录 | T1110 |
| 2 | SMB 探测与侦察检测 | 通过 SMB 的匿名登录尝试 | T1046 |
| 3 | 权限提升检测 | 特殊权限分配 | T1078 |
### ✅ 阶段 4 — 事件报告
- 以专业的 SOC 分析师格式撰写
- 每份报告包含:摘要、时间线、检测方法、证据、影响、建议、MITRE 映射
### ✅ 阶段 5 — GitHub 文档
- 上传了所有截图、报告和说明文档
## 📸 截图
### 阶段 1 — Splunk 正在收集 Windows 日志

### 攻击 1 — 来自 Kali 的 Nmap 端口扫描

### 攻击 2 — 来自 Kali 的 Hydra 暴力破解

### 攻击 2 — Splunk 检测到暴力破解(53 个事件)

### 攻击 3 — Metasploit SMB 漏洞利用尝试

### 检测规则 1 — 暴力破解登录检测

### 检测规则 1 — 告警已保存在 Splunk 中

### 检测规则 2 — SMB 探测检测

### 检测规则 3 — 权限提升检测

## 🔍 Splunk 检测查询
### 暴力破解检测 (T1110)
```
index=main sourcetype="WinEventLog:Security" EventCode=4625
| stats count by Account_Name
| where count > 5
```
### SMB 探测与侦察检测 (T1046)
```
index=main sourcetype="WinEventLog:Security" (EventCode=4624 OR EventCode=4625 OR EventCode=4648)
| stats count by Account_Name
| where count > 3
```
### 权限提升检测 (T1078)
```
index=main sourcetype="WinEventLog:Security" EventCode=4672
| stats count by Account_Name
| where count > 2
```
## 📄 事件报告
| 报告 | 攻击 | MITRE | 文件 |
|--------|--------|-------|------|
| INC-2026-001 | 暴力破解登录攻击 | T1110 | [查看报告](incident-reports/Incident-Report-1-BruteForce.docx) |
| INC-2026-002 | 网络侦察扫描 | T1046 | [查看报告](incident-reports/Incident-Report-2-Reconnaissance.docx) |
| INC-2026-003 | SMB 漏洞利用尝试 | T1059 | [查看报告](incident-reports/Incident-Report-3-Metasploit.docx) |
## 🎯 关键发现
| 发现 | 详情 |
|---------|--------|
| **发现的开放端口** | 135 (RPC), 139 (NetBIOS), 445 (SMB) |
| **暴力破解事件** | 检测到 20 次失败/成功的登录尝试 |
| **匿名登录尝试** | 30 个可疑的匿名 SMB 连接 |
| **分析的事件总数** | 1,182+ 个 Windows 安全事件 |
| **创建的检测规则** | 3 个 Splunk 定时告警 |
| **撰写的事件报告** | 3 份专业的 SOC 报告 |
## 📚 我学到了什么
- 如何设置和配置 **Splunk Enterprise** 作为 SIEM
- 如何使用 Nmap 执行**网络侦察**
- 如何使用 Hydra 执行**暴力破解攻击**
- 如何使用 **Metasploit Framework** 进行漏洞扫描
- 如何编写 **Splunk SPL 查询** 来检测攻击
- 如何在 Splunk 中创建**定时检测告警**
- 如何撰写**专业的 SOC 事件报告**
- 如何将攻击映射到 **MITRE ATT&CK Framework**
## ⚠️ 免责声明
本项目是在**受控的家庭实验环境**中进行的,仅供教育目的。所有攻击均针对我自己的机器执行。本项目旨在演示防御性安全技能。
## 👤 作者
## Balaram Reddy Venna
有志成为 SOC 分析师 | 检测工程师
📧 vennabalaramreddy@gmail.com
*本项目作为我的网络安全作品集的一部分,旨在展示实际的 SIEM 和检测工程技能。*
标签:CTI, 安全运营, 扫描框架, 插件系统, 攻击模拟, 驱动签名利用