sai-teja-girimaji/soc-blind-spot-auditor

GitHub: sai-teja-girimaji/soc-blind-spot-auditor

一款命令行审计工具,通过映射资产清单和 SIEM 日志源来发现 MITRE ATT&CK 检测覆盖盲区。

Stars: 0 | Forks: 0

# SOC 盲点审计工具 **发现因 SIEM 日志源摄入缺失或不完整而导致的危险 MITRE ATT&CK 技术盲点。** ## 为什么开发这款工具 大多数 SOC 都面临着一个隐蔽但致命的问题:**日志源接入缺失**。您可能在 EDR、网络检测和 SIEM 规则上投入了大量资金,但由于所需的遥测数据从未被接入或仅部分传输,攻击者的某些行为类别仍然完全不可见。 SOC 盲点审计工具通过以下方式解决这个问题: 1. 获取您的权威资产清单 2. 获取您当前的 SIEM 源清单和摄入健康状况 3. 将两者与完整的 MITRE ATT&CK Enterprise 技术列表(在线或离线)进行映射 4. 生成一份**按风险优先级排序的报告**,详细列出检测覆盖率为零或部分的每一项技术 它将“我们是否存在盲区?”这种抽象的问题,转化为一份可操作且适合提交给管理层的清单。 ## 安装 ### 从源码安装(目前推荐) ``` git clone https://github.com/sai-teja-girimaji/soc-blind-spot-auditor.git cd soc-blind-spot-auditor # 创建 virtual environment(需要 Python 3.10+) python3.12 -m venv .venv source .venv/bin/activate # or .venv\Scripts\activate on Windows pip install -r requirements.txt pip install -e . ``` ### 验证 ``` soc-auditor version ``` ## 使用示例数据快速入门 ``` # 1. 生成逼真的 demo 文件 soc-auditor sample # 2. 运行 audit(实时 MITRE 数据) soc-auditor scan --assets assets.csv --sources siem_sources.csv # 3. Offline 模式(无网络,非常适合 air-gapped 或 demos) soc-auditor scan --assets assets.csv --sources siem_sources.csv --offline # 4. 生成精美的交互式 HTML 报告 soc-auditor scan --assets assets.csv --sources siem_sources.csv --output html --offline # 然后在你的 browser 中打开 soc-audit-*/blind_spot_report.html ``` ## 输入文件格式参考 ### assets.csv(必需) | 列名 | 描述 | 示例 | |--------------|------------------------------------------|--------------------------| | asset_id | 唯一标识符 | A001 | | hostname | 资产名称 | dc01.corp.local | | asset_type | server, endpoint, network, cloud, iot, saas | server | | criticality | critical, high, medium, low | critical | | os | 操作系统 / 平台 | Windows Server 2022 | | location | 物理位置或云区域 | HQ / AWS-AP-SOUTH | ### siem_sources.csv(必需) | 列名 | 描述 | 示例 | |-------------------------|--------------------------------------------------|--------------------------| | source_id | 唯一源标识符 | S001 | | source_name | 易读的名称 | Windows Security Events | | log_type | 用于映射的类别(支持灵活别名) | endpoint, identity_provider, edr, email_gateway... | | ingestion_status | ingested, partial, not_ingested | ingested | | event_volume_baseline | 预期的每日事件数(可选) | 45000 | | last_seen | 最后一次成功摄入的 ISO 日期(可选) | 2026-05-27 | ## CLI 参考 ``` # 带 filters 的完整扫描 soc-auditor scan \ --assets inventory.csv \ --sources siem_inventory.csv \ --min-risk 65 \ --tactic "Initial Access" \ --status blind_spot \ --output html \ --output-dir ./reports # 其他 commands soc-auditor sample --force # regenerate sample files soc-auditor version ``` ## 终端输出示例(Rich) ``` ╭─────────────────────────────────────────────────────────────────────────────╮ │ SOC Blind Spot Audit Report │ │ Total techniques analysed: 27 │ │ Blind spots: 18 (critical: 3, high: 7) │ │ Partial coverage: 4 │ │ Fully covered: 5 │ │ Overall coverage score: 19% │ ╰─────────────────────────────────────────────────────────────────────────────╯ ┏━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━┓ ┃ TECHNIQUE ┃ TECHNIQUE NAME ┃ TACTIC ┃ SEVERITY ┃ STATUS ┃ MISSING SOURCES ┃ RISK ┃ ┡━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━┩ │ T1003 │ OS Credential Dumping │ Credential Access │ CRITICAL │ BLIND SPOT │ endpoint, server, edr │ 92 │ │ T1190 │ Exploit Public-Facing Application │ Initial Access │ CRITICAL │ BLIND SPOT │ network, waf, cloud │ 88 │ │ T1486 │ Data Encrypted for Impact │ Impact │ CRITICAL │ BLIND SPOT │ endpoint, server, backup │ 84 │ │ T1078 │ Valid Accounts │ Persistence │ HIGH │ BLIND SPOT │ server, endpoint, ... │ 76 │ │ T1566 │ Phishing │ Initial Access │ HIGH │ BLIND SPOT │ email_gateway, endpoint │ 72 │ │ ... │ ... │ ... │ ... │ ... │ ... │ ... │ └────────────┴──────────────────────────────────────┴───────────────────┴──────────┴──────────────┴────────────────────────────┴──────┘ ``` 颜色图例:**红色** = blind_spot,**黄色** = partial,**绿色** = covered。 ## HTML 报告功能 - 完全独立的单一文件(Tailwind + 原生 JS) - 支持按战术 (tactic)、严重程度、状态和全文搜索进行即时客户端过滤 - 风险颜色条和状态标签 - 适合领导层和审计展示的专业深色主题 ## 局限性与路线图 **当前局限性** - 依赖于您 SIEM 清单中准确的 `log_type` 分类(别名匹配会有所帮助) - 实时获取技术的严重程度使用启发式算法 + 已知的关键项 - 尚未对特定检测规则或分析内容进行建模 —— 仅考虑日志源的存在 受影响资产的计数采用启发式方法(保持良好的 asset_type 卫生有助于改善此问题) **计划中的增强功能** - 添加对自定义“技术 → 日志源”映射文件(YAML/JSON)的支持 - 与 Splunk、Sentinel、Elastic、Chronicle API 集成,以实现实时源发现 - 规则覆盖率深度链接(例如,“您有数据源,但触发了 0 个分析”) - 两次审计运行之间的趋势差异对比 - PDF 导出和 Slack/Teams webhook 输出 ## 作者与许可 **Sai Teja Girimaji** 能力主管 – 网络安全,NTT DATA - GitHub: https://github.com/sai-teja-girimaji/soc-blind-spot-auditor - 在 X 上的深度解析配套文章:*(链接占位符 —— 待发布)* MIT License © 2026 Sai Teja Girimaji
标签:ATT&CK覆盖率, SIEM审计, 多模态安全, 安全运营, 扫描框架, 数据可视化, 文档结构分析, 逆向工具