Manjira13/soc-incident-response-capstone
GitHub: Manjira13/soc-incident-response-capstone
一个面向SOC事件响应全流程的Capstone实践项目,模拟Samba漏洞利用攻击场景,涵盖检测、调查、遏制和事后分析。
Stars: 0 | Forks: 0
# SOC 事件响应 Capstone 项目:Samba 漏洞利用调查
## 项目概述
本仓库记录了一次模拟的安全运营中心 (SOC) 事件响应调查过程,涉及对 Samba `usermap_script` 漏洞的利用。目标是检测恶意的 SMB 活动、调查攻击、验证漏洞利用、执行遏制,并记录完整的事件响应生命周期。
此次攻击是在受控的实验室环境中,使用 Metasploit Framework 对存在漏洞的 Samba 主机进行的模拟。使用 Zeek 监控网络流量,在 Kibana (ELK Stack) 中分析安全事件,在 TheHive 中进行事件管理,并通过使用 CrowdSec 阻止攻击者的 IP 地址来执行遏制。
在整个调查过程中,从多个安全工具收集了证据,以验证攻击、关联事件并记录该事件。事后使用 **5 Whys**(五个为什么)方法和 **Fishbone (Ishikawa) Diagram**(鱼骨图)进行分析,以找出根本原因并提出安全改进建议。
### 展示的技能
- 安全监控与警报分类
- 使用 Zeek 进行网络流量分析
- 使用 Kibana (ELK Stack) 进行日志分析
- 使用 TheHive 进行事件管理
- 在受控实验室环境中使用 Metasploit 进行攻击验证
- 使用 CrowdSec 进行威胁遏制
- 根本原因分析 (RCA)
- 事件记录与报告
- MITRE ATT&CK 映射
- 安全建议与经验教训
# 实验室架构
```
Attacker (Metasploit)
│
▼
Vulnerable Samba Host
│
▼
Zeek IDS
│
▼
ELK Stack (Kibana)
│
▼
TheHive
│
▼
CrowdSec
│
▼
Firewall Bouncer
```
# 攻击场景
一台存在漏洞的 Samba 服务器成为了 Metasploit `usermap_script` exploit 模块的攻击目标。
攻击产生了可疑的 SMB 流量,Zeek 通过自定义的 `Samba_Backdoor` 通知检测到了这些流量。这些安全事件在 Kibana 中进行了调查,在 TheHive 中进行了记录,并通过使用 CrowdSec 手动阻止攻击者的 IP 地址成功实施了遏制。
# 使用的工具
- Zeek IDS
- ELK Stack (Elasticsearch, Logstash, Kibana)
- TheHive
- CrowdSec
- Metasploit Framework
- Ubuntu Linux
- MITRE ATT&CK Framework
# MITRE ATT&CK 映射
| 技术 | ID |
|-----------|----|
| 远程服务利用 | **T1210** |
# 调查工作流
## 1. 检测
Zeek 检测到了 Samba exploit 尝试,并生成了一个自定义的 `Samba_Backdoor` 通知,该通知被提取到 Kibana 中进行调查。

## 2. 攻击验证
为了验证检测结果,在实验室中使用 Metasploit Framework 成功复现了该 exploit。

## 3. 创建事件案例
在 TheHive 中创建了一个案例,用于记录调查情况、管理 observables,并协调事件响应活动。

## 4. 任务分配
在 TheHive 中创建了一项遏制任务,以跟踪和记录响应操作。

## 5. 遏制
使用 CrowdSec Firewall Bouncer 手动阻止了攻击者的 IP 地址,防止了其与目标系统的进一步通信。

## 6. 验证
连通性测试确认,在实施遏制后,攻击者的 IP 地址已成功被阻止。

## 7. 任务完成
一旦遏制和验证完成,该调查任务在 TheHive 中即被标记为已完成。

## 8. 遇到的挑战
在事后报告期间,尝试计算:
- 平均检测时间 (MTTD)
- 平均响应时间 (MTTR)
- 潜伏时间
然而,Kibana runtime fields 产生了以下错误:
```
Cannot cast from [double] to [void]
```
由于时间戳字段不一致,这些指标无法计算。这一问题已被记录以便未来改进,并突显了标准化事件时间戳对于运营报告的重要性。

## 9. 事后分析
使用 **5 Whys** 分析和 **Fishbone (Ishikawa) Diagram**(鱼骨图)来确定事件的根本原因,并确定改善组织安全态势的建议。

# 项目结构
```
soc-incident-response-capstone/
│
├── README.md
│
├── docs/
│ ├── Incident_Report.md
│ ├── Investigation_Notes.md
│ └── Root_Cause_Analysis.md
│
└── Screenshots/
├── 01_Metasploit_Samba_Exploit.png
├── 02_Samba_Backdoor_Kibana_Logs.png
├── 03_TheHive_Cases.png
├── 04_Task_Creation.png
├── 05_Blocked_IP_With_Crowdsec.png
├── 06_Ping_Test_On_Blocked_IP.png
├── 07_Task_Complete.png
├── 08_Problem_Creating_Runtime_Field.png
└── 09_RCA_Fishbone_Diagram.png
```
# 文档
`docs` 目录中提供了额外的项目文档:
- 📄 事件报告
- 📄 调查笔记
- 📄 根本原因分析
# 展示的关键技能
- 安全监控
- 事件检测
- 网络流量分析
- 日志分析
- 事件响应
- 警报分类
- 威胁遏制
- 根本原因分析
- SOC 案例管理
- MITRE ATT&CK 映射
- 技术文档
# 经验教训
- Zeek 通过自定义检测逻辑有效检测到了可疑的 SMB 活动。
- TheHive 在整个调查过程中提供了结构化的事件跟踪和任务管理。
- CrowdSec 通过阻止恶意 IP 地址成功遏制了攻击。
- 在采取遏制措施之前,手动验证确认了 exploit。
- 准确的运营指标(例如 MTTD 和 MTTR)需要跨安全工具收集一致的时间戳。
- 整合 Zeek、TheHive 和 CrowdSec 可以显著提高 SOC 的检测和响应效率。
# 参考
- MITRE ATT&CK Framework
- Zeek 文档
- Elastic (ELK Stack) 文档
- TheHive 项目文档
- CrowdSec 文档
- Metasploit Framework 文档
标签:ELK, Samba, Web报告查看器, XXE攻击, 安全运营中心, 库, 应急响应, 漏洞分析, 网络映射, 路径探测