farhan-shafee/detection-engineering-lab
GitHub: farhan-shafee/detection-engineering-lab
围绕 Sigma 规则编写与 MITRE ATT&CK 映射构建的检测工程作品集实验环境,帮助安全从业者学习和展示从假设驱动到规则验证再到告警调查的完整检测流程。
Stars: 1 | Forks: 0
# 检测工程作品集实验室
## 本实验室演示内容
- 根据假设编写和记录检测规则。
- 将检测映射到 **MITRE ATT&CK** 技术。
- 编写和验证 **Sigma** 规则。
- 使用示例日志和分析师手册调查告警。
- 传达检测质量、误报和分诊指南。
## 仓库工作流
1. **定义用例/战术**(例如,凭据滥用、持久化)。
2. **起草检测元数据**(严重程度、数据源、ATT&CK 映射、误报 (FPs)、分诊)。
3. 在 `sigma-rules/` 中 **创建 Sigma 规则**。
4. 使用本地检查(`make test`)**验证规则语法**。
5. 针对 `logs/` 中的 **测试示例日志**。
6. 在 `reports/examples/` 中 **记录调查流程**。
7. 发布前 **调优并记录局限性**。
## 项目结构
```
.
├── detections/
│ ├── credential_access/
│ ├── execution/
│ ├── persistence/
│ └── detection_logic.md
├── docs/
│ └── detection_methodology.md
├── logs/
│ ├── sample_logs.json
│ └── windows/
├── reports/
│ ├── examples/
│ └── incident_analysis.md
├── scripts/
│ └── validate_rules.py
└── sigma-rules/
```
## 快速开始
### 前置条件
- Python 3.10+
- `make`
### 设置
```
git clone
cd detection-engineering-lab
make test
```
### 常用命令
```
make lint-rules # Validate Sigma file structure/metadata
make test-logs # Validate sample logs are parseable JSON
make test # Run all checks
```
## 示例输出
```
$ make test
python3 scripts/validate_rules.py
Validated 4 Sigma rule(s): OK
python3 -m json.tool logs/sample_logs.json > /dev/null
python3 -m json.tool logs/windows/windows_security_events.json > /dev/null
All tests passed.
```
## 检测目录 (作品集)
| 用例 | 规则 | ATT&CK | 严重程度 |
|---|---|---|---|
| 凭据访问 | 失败后的暴力破解成功 | T1110 (暴力破解) | 高 |
| 持久化 | 创建新的本地管理员用户 | T1136.001 (创建本地账户) | 高 |
| 执行 | 可疑的 PowerShell 编码命令 | T1059.001 (PowerShell) | 中 |
详见 `detections/*/*.md` 中的详细元数据。
## 局限性
- 仅为合成数据;无实时 SIEM 后端。
- Sigma 规则是通用的,可能需要针对特定后端进行字段映射。
- 验证是结构性的(轻量级模式),而非完整的语义转换测试。
- 调查报告是实验室示例,并非针对生产环境事件响应的声明。
## 道德使用
将检测规则防御性地用于监控和威胁检测改进。
## 许可证
本项目基于 MIT 许可证 (`LICENSE`) 授权。
标签:AMSI绕过, MITRE ATT&CK映射, Python安全工具, Sigma规则, SOC分析, Triage工作流, 凭证访问, 命令执行, 嗅探欺骗, 威胁检测, 安全分析师, 安全剧本, 安全检测工程, 安全运营, 扫描框架, 权限维持, 检测即代码, 目标导入, 网络安全, 网络安全实验环境, 误报调优, 逆向工具, 防御方法学, 隐私保护