WiLL75G/soc-ai-era-detection-lab
GitHub: WiLL75G/soc-ai-era-detection-lab
一个为期四天的 SOC 检测实验室,通过模拟 NHI 滥用、Prompt Injection 和 MCP 攻击等 AI 时代威胁,帮助分析师掌握从威胁建模到事件关联的完整检测工作流。
Stars: 0 | Forks: 0
# SOC 检测实验室 AI 时代威胁模拟
**状态:已交付 4 天,共 4 天 (完成)**
## 项目概述
这是一个为期 4 天的 SOC 检测实验室实操项目,模拟 2026 年企业环境中正在不断涌现的 AI 时代威胁。该项目从零开始构建,使用 Splunk、Python、STRIDE 威胁建模,并以 OWASP LLM 应用程序 Top 10 作为参考框架。
本项目展示了完整的 SOC 分析师工作流:威胁模拟、日志接入、SIEM 检测规则编写、威胁建模、多事件关联、MITRE ATT&CK 映射以及专业的事件报告文档编制,并将其应用于大多数初级分析师从未接触过的威胁类别。
## 项目背景
AI 代理、服务账户和自主副驾驶正在企业环境中大规模部署。到 2026 年,在许多组织中,非人类身份与人类员工的比例将达到 82:1。OWASP 将 Prompt injection 刻意评为 LLM 应用程序的头号风险。MCP server 攻击代表了一种全新的攻击类别,目前尚无既定的检测手册。
大多数 SOC 团队对此并未做好准备。
本实验室旨在从检测开始改变这一现状。
## 实验室结构
| 天数 | 重点 | 模拟威胁 | 工具 | 状态 |
|-----|-------|-----------------|-------|--------|
| 第 1 天 | NHI 异常检测 | 被攻陷的 AI 服务账户通过 admin API 泄露 1,877 条记录 | Python, Splunk SPL | 完成 |
| 第 2 天 | Prompt Injection 检测 | 攻击者向企业 AI 助手注入覆盖指令 | Python, Splunk SPL | 完成 |
| 第 3 天 | MCP 威胁建模 | 连接到 GitHub、Jira、Slack 和 secrets manager 的 AI 编码代理 | STRIDE, draw.io | 完成 |
| 第 4 天 | 完整 SOC 事件报告 | 将 NHI 滥用、prompt injection 和 MCP 利用关联到一个杀伤链中的综合 AI 时代攻击链 | Markdown | 完成 |
## 展示的核心技能
- 使用 Python 生成合成日志,模拟真实攻击模式
- 在 Splunk Enterprise 中进行 SIEM 接入和 SPL 检测规则编写
- 行为基线建立,识别偏离已知良好状态的异常
- 使用 STRIDE 方法论进行威胁建模,并将其应用于 AI 代理系统
- 将识别出的威胁转化为可测试的检测假设
- 针对 AI 时代攻击技术进行 MITRE ATT&CK 映射
- 将多个独立的检测结果关联到一个归属于单一威胁行为者的连贯杀伤链中
- SOC Tier 1 和 Tier 2 事件文档编制,涵盖从检测到多阶段调查和分析师响应的全过程
- 将 OWASP LLM Top 10 作为实用的检测框架加以应用
## 检测结果
| 天数 | 日志条目 | 恶意 | 标记 | 漏报 |
|-----|-------------|-----------|---------|-----------------|
| 第 1 天 | 100 | 20 | 38 | 0 |
| 第 2 天 | 85 | 15 | 15 | 0 |
## 威胁建模覆盖范围
| 天数 | 框架 | 评估类别 | 产生的检测假设 |
|-----|-----------|---------------------|-------------------------------|
| 第 3 天 | STRIDE | 6 项(共 6 项) | 3 |
## 事件关联结果
| 天数 | 在杀伤链中的角色 | 结果 |
|-----|---------------------|---------|
| 第 1 天 | 初始攻陷与成功泄露 | 确认泄露 1,877 条记录 |
| 第 2 天 | 次要尝试:通过 injection 窃取凭证 | 在成功前被检测并标记 |
| 第 3 天 | 架构根本原因识别 | 具有永久访问权限且无单任务范围限制 |
| 第 4 天 | 跨所有三个阶段的全面关联 | 通过共享的 IOC 确认单一威胁行为者 |
## 仓库结构
```
soc-ai-era-detection-lab/
├── day1-nhi-detection/
│ ├── generate_nhi_logs.py # NHI log generation script
│ ├── nhi_anomaly_patterns.md # 5 anomaly patterns reference
│ └── README.md # Day 1 incident report
├── day2-prompt-injection/
│ ├── generate_pi_logs.py # Prompt injection log script
│ ├── pi_indicators.md # 6 detection indicators reference
│ └── README.md # Day 2 incident report
├── day3-mcp-threat-model/
│ ├── scenario.md # Enterprise MCP scenario definition
│ ├── stride_threat_model.md # STRIDE threat model table
│ ├── detection_hypotheses.md # 3 SOC detection hypotheses
│ └── README.md # Day 3 threat model report
├── day4-incident-report/
│ └── INCIDENT_REPORT.md # Full multi-phase incident report
├── logs/
│ ├── nhi_logs.json # Day 1 synthetic log data
│ └── pi_logs.json # Day 2 synthetic log data
└── screenshots/ # Evidence — all lab screenshots
```
## MITRE ATT&CK 覆盖范围
| 技术 | ID | 天数 |
|-----------|-----|-----|
| 有效账户 | T1078 | 第 1 天, 第 2 天, 第 3 天, 第 4 天 |
| 来自信息存储库的数据 | T1213 | 第 1 天 |
| 通过 Web 服务外传数据 | T1567 | 第 1 天, 第 2 天, 第 3 天, 第 4 天 |
| 劫持执行流 | T1574 | 第 2 天, 第 4 天 |
| 不安全的凭证 | T1552 | 第 2 天, 第 3 天, 第 4 天 |
| 来自本地系统的数据 | T1005 | 第 2 天 |
| 网络钓鱼 | T1566 | 第 3 天, 第 4 天 |
| 资源劫持 | T1496 | 第 3 天 |
## 参考框架
本实验室基于
**OWASP LLM 应用程序 Top 10 2025**
构建,以此作为 AI 安全风险的行业基准。
涵盖的主要风险:
- LLM01 — Prompt Injection(第 2 天,第 4 天)
- LLM02 — 不安全的输出处理(第 2 天)
- LLM06 — 过度权限(第 1 天,第 3 天,第 4 天)
- LLM08 — 向量和嵌入弱点(第 3 天)
- LLM09 — 错误信息(第 3 天)
## 工具和环境
| 工具 | 用途 |
|------|---------|
| Splunk Enterprise | SIEM 日志接入和检测 |
| Python 3 | 合成日志生成 |
| VS Code | 开发环境 |
| STRIDE | 威胁建模方法论 |
| draw.io | 威胁模型图表 |
| OWASP LLM Top 10 | 检测参考框架 |
| GitHub | 文档和作品集证据 |
## 关于作者
William Gokah 是一名 SOC 分析师,致力于在英国、阿联酋和澳大利亚的 MSSP 获得远程 Tier 1 和 Tier 2 职位。该项目是 @WilliamInCyber 品牌下公开构建的更广泛的蓝队实操实验室作品集的一部分。
标签:AI安全, AMSI绕过, Chat Copilot, Python, SOC实验室, 威胁建模, 威胁检测, 无后门, 逆向工具