FatimaCyberLabs/BlueSentinel
GitHub: FatimaCyberLabs/BlueSentinel
一个基于 PySide6 的桌面端 SOC 调查平台,集成 Sigma 检测引擎、进程树取证分析和 MITRE ATT&CK 映射,支持端到端的入侵场景调查流程。
Stars: 0 | Forks: 0
# BlueSentinel
**面向 SOC Analysts、Detection Engineers 和 Incident Responders 的蓝军研究平台。** 具备真实的 Sigma 检测引擎、进程树取证分析、MITRE ATT&CK 映射以及案例管理功能——基于 Clean Architecture、SQLAlchemy 和 PySide6 构建。
## 一句话简介
加载一个合成的入侵场景(phishing -> 混淆的 PowerShell -> 持久化 -> 绕过 AMSI -> 转储 LSASS -> 横向移动 -> C2),通过真实的 Sigma 规则包对其进行评估,重建攻击的进程树,映射相关的 MITRE ATT&CK 技术,并自动开启一个包含时间线、证据和分析师笔记的调查案例——所有操作都在单一的工作界面(Investigation Workbench)内完成,无需离开应用程序。
## 端到端调查流程
1. **加载并分析场景**(一键操作)-> 摄入约 25 个格式真实的 Windows/Sysmon 事件(Image、CommandLine、ProcessGuid、ParentProcessGuid、GrantedAccess、TargetObject 等)。
2. **Sigma 引擎**(内置解析器 + 布尔语法评估器,不依赖任何外部检测库)根据每个事件评估 7 条真实规则。
3. 检测结果会自动开启一个**调查案例**,包含计算出的严重程度、关联的证据以及按时间顺序排列的时间线。
4. **进程树**通过 ProcessGuid/ParentProcessGuid 重建完整的谱系,并高亮显示触发检测的进程。
5. **MITRE ATT&CK Explorer** 展示真实的覆盖热力图(即:哪些技术被规则覆盖、哪些技术在此案例中发生了实际匹配、以及哪些是检测盲点)。
6. 分析师负责管理**案例**:转换其状态(IR 状态机:New -> Triage -> Investigating -> Containment -> Eradication -> Recovery -> Closed),并添加笔记。
## 技术栈
- Python 3.13,严格的 type hints(`mypy --strict`)
- PySide6(UI、MVVM 模式、自定义暗色主题)
- SQLAlchemy 2.0 + SQLite(WAL 模式、强制外键)
- `structlog`(结构化 JSON 日志记录 + 每日轮转)
- `pytest` / `pytest-qt` / `pytest-cov`
- GitHub Actions 上的 CI(lint、类型检查、Linux + Windows 测试、构建)
## 架构
采用四层 Clean Architecture。完整文档请参阅
[`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md),其中包括为什么最初考虑的 13 个模块中有 6 个被砍掉,并将这些时间投入到了剩余 7 个模块的深度开发中。
```
src/bluesentinel/
├── domain/
│ ├── entities/ # IOC, Case, WindowsEvent
│ ├── detection/ # SigmaRule, sigma_parser, sigma_evaluator, mitre_coverage
│ └── forensics/ # ProcessTreeBuilder (lineage via ProcessGuid)
├── application/
│ ├── ioc/ # IOCService
│ ├── cases/ # (integrado en InvestigationService)
│ └── detection/ # InvestigationService -- orquesta el pipeline completo
├── infrastructure/
│ ├── db/ # modelos SQLAlchemy + repositorios
│ ├── rules/packs/ # rule pack Sigma real (7 reglas, YAML)
│ ├── demo_data/ # generador del escenario de intrusion sintetico
│ └── mitre/ # catalogo MITRE ATT&CK embebido
└── presentation/
├── viewmodels/ # InvestigationViewModel, IOCManagerViewModel
└── views/ # Dashboard, Workbench, ProcessTree, MITRE, Case...
```
## Sigma 检测引擎
内置解析器 + 评估器(不使用 `pySigma`),在 `domain/detection/` 中实现:
- 字段修饰符:`contains`、`startswith`、`endswith`、`re`、`all`。
- 完整的布尔语法:`and`/`or`/`not`、括号、`1 of`/`all of`/`them`。
- 作为 map 列表的选择器(由 AND 组成的组之间进行 OR 运算),与 Sigma 官方规范完全一致。
已在一个包含混合良性噪点的完整攻击场景中完成验证——请参阅 `tests/integration/test_full_attack_scenario.py`,该测试既检查了预期的检测结果(召回率),也验证了在格式相似的良性活动中不存在误报(精确率)。
## 安装与运行
```
python3.13 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"
python -m bluesentinel
```
打开应用程序后,前往 **Investigacion** 并点击 **"Cargar y analizar escenario"**——上述描述的整个流程将在几秒钟内执行完毕。
## 测试
```
pytest # unit + integracion, con cobertura
mypy src # type checking estricto
ruff check src tests # lint
```
约 79 个测试:涵盖 Sigma 解析器、条件语法、针对真实事件的评估引擎、包含完整 LOLBin 攻击链的进程树重建、领域实体(IOC、带有状态机的 Case),以及针对完整场景的端到端集成测试。
## 路线图
请参阅 `docs/ARCHITECTURE.md` 了解设计决策的详细信息以及待办事项(PyInstaller 打包、从磁盘提取真实 EVTX、扩展 MITRE 目录)。
## 许可证
MIT
标签:MITRE ATT&CK映射, PE 加载器, PySide6, Python, Sigma检测, SOC调查平台, 安全规则引擎, 安全运营, 扫描框架, 数字取证, 无后门, 案件管理, 自动化脚本