cojjjj/blackterm-mitre-mapper

GitHub: cojjjj/blackterm-mitre-mapper

一个离线优先的防御性安全调查平台,将安全遥测数据映射到 MITRE ATT&CK 框架并支持 Sigma 规则检测与本地化分析。

Stars: 0 | Forks: 0

# BLACKTERM // MITRE Mapper

针对遥测数据、Sigma 规则和 MITRE ATT&CK 上下文的离线优先防御调查工作区。

Python License Status Processing

BLACKTERM // MITRE Mapper 会分析命令行和安全遥测数据,使用透明的规则将行为映射到 MITRE ATT&CK,提取调查上下文,并通过 CLI、本地仪表板和独立报告展示结果。 遥测数据将保留在分析人员的机器上。 ## 功能 - 分析命令行和结构化的安全事件 - 导入 JSON、JSONL 和 Windows EVTX 遥测数据 - 标准化常见的 Sysmon 和 Windows Event Log 字段 - 使用可审查的 YAML 规则将行为映射到 ATT&CK - 导入部分实用的 Sigma 规则 - 从遥测数据中提取实体和指标 - 生成风险、置信度、战术、时间线、图表和建议视图 - 在本地保存调查记录,以便日后重新打开 - 导出 JSON 和独立的 HTML 报告 - 运行本地 FastAPI 仪表板,无需将遥测数据发送到外部机器 ## 快速开始 ``` git clone https://github.com/cojjjj/blackterm-mitre-mapper.git cd blackterm-mitre-mapper python -m venv .venv .venv\Scripts\activate python -m pip install -e . ``` 如需支持 EVTX: ``` python -m pip install -e ".[evtx]" ``` 启动平台: ``` mitre-mapper dashboard ``` 仪表板的绑定地址为: ``` http://127.0.0.1:8080 ``` ## CLI 示例 分析命令: ``` mitre-mapper analyze "powershell.exe -NoProfile -enc SQBFAFgA" ``` 扫描样本遥测数据: ``` mitre-mapper scan examples\events\sample_events.jsonl ``` 生成 HTML 报告: ``` mitre-mapper scan examples\events\sample_events.jsonl --format html --output report.html ``` 检查标准化后的 EVTX 遥测数据: ``` mitre-mapper inspect-telemetry Security.evtx --limit 3 ``` 扫描 EVTX 并导出 JSON: ``` mitre-mapper scan Security.evtx --format json --output security-results.json ``` ## Sigma 导入 BLACKTERM 支持针对常用进程、网络、注册表、DNS、文件和 Windows 事件字段设计的特定 Sigma 子集。 ``` mitre-mapper import-sigma examples\custom_rules\sigma_encoded_powershell.yml --output rules\sigma.yml mitre-mapper validate-rules rules\sigma.yml mitre-mapper scan events.jsonl --rules rules\sigma.yml ``` 支持的条件模式包括: - 具名的 selection - `all of them` - `1 of them` 和 `any of them` - `all of selection_*` - `1 of selection_*` - 简单的 `selection_a and selection_b` - 简单的 `selection_a or selection_b` 支持的字段修饰符包括 `contains`、`startswith`、`endswith`、`re` 以及通配符字符串值。 ## EVTX 标准化 常见的别名包括: | 源字段 | 标准化字段 | | --- | --- | | `Image` | `process.name` | | `CommandLine` | `process.command_line` | | `ParentImage` | `parent_process.name` | | `User` / `TargetUserName` | `user.name` | | `SourceIp` / `IpAddress` | `source.ip` | | `DestinationIp` | `destination.ip` | | `DestinationPort` | `destination.port` | | `TargetFilename` | `file.path` | | `TargetObject` | `registry.path` | | `QueryName` | `dns.question.name` | | Sysmon 哈希字符串 | `file.hashes` | ## 自定义 BLACKTERM 规则 ``` id: BT-T1059-001 name: Encoded PowerShell technique_id: T1059.001 technique_name: PowerShell tactics: [execution] severity: high confidence: 0.90 description: Detects PowerShell using encoded command arguments. platforms: [Windows] match: all: - field: process.command_line operator: contains value: powershell - field: process.command_line operator: regex value: '(?i)(?:^|\s)(?:-|/)(?:enc|encodedcommand)\b' ``` ## 开发 ``` python -m pip install -e ".[dev,evtx]" ruff check . pytest -q ``` GitHub Actions 工作流会在 Python 3.10、3.11 和 3.12 环境中运行质量检查。 ## 仓库结构 ``` blackterm-mitre-mapper/ ├── .github/ ├── data/ ├── examples/ ├── rules/ ├── src/blackterm_mitre_mapper/ ├── tests/ ├── CHANGELOG.md ├── CONTRIBUTING.md ├── ROADMAP.md ├── SECURITY.md ├── LICENSE ├── README.md └── pyproject.toml ``` ## 本地存储 已保存的案例存储在以下位置: ``` %USERPROFILE%\.blackterm\mitre-mapper\cases ``` ## 项目文档 - [路线图](ROADMAP.md) - [贡献指南](CONTRIBUTING.md) - [安全政策](SECURITY.md) - [更新日志](CHANGELOG.md) ## 安全与范围 BLACKTERM 旨在对您获得授权检查的遥测数据进行防御性分析。ATT&CK 映射仅作为调查上下文,并不构成恶意活动的确凿证据。在得出结论之前,请审查相关事件、主机上下文、用户行为和辅助证据。 本项目不隶属于 MITRE,也未获得其认可。MITRE ATT&CK 是 The MITRE Corporation 的注册商标。
标签:ATT&CK映射, Python, Sigma规则, 多模态安全, 无后门, 目标导入, 逆向工具, 速率限制处理, 遥测分析