implementing-mitre-attack-coverage-mapping
实施 MITRE ATT&CK 覆盖率映射,以识别检测空白、优先排序规则开发,并衡量 SOC 检测成熟度与对手技术的匹配程度。
Best use case
implementing-mitre-attack-coverage-mapping is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
实施 MITRE ATT&CK 覆盖率映射,以识别检测空白、优先排序规则开发,并衡量 SOC 检测成熟度与对手技术的匹配程度。
Teams using implementing-mitre-attack-coverage-mapping should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/implementing-mitre-attack-coverage-mapping/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How implementing-mitre-attack-coverage-mapping Compares
| Feature / Agent | implementing-mitre-attack-coverage-mapping | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
实施 MITRE ATT&CK 覆盖率映射,以识别检测空白、优先排序规则开发,并衡量 SOC 检测成熟度与对手技术的匹配程度。
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# 实施 MITRE ATT&CK 覆盖率映射
## 概述
MITRE ATT&CK 覆盖率映射为安全运营中心(Security Operations Center,SOC)团队提供了一个结构化的、以对手为中心的视角来评估检测能力。根据 2025 年 CardinalOps 报告,企业 SIEM 平均只对 21% 的 ATT&CK 技术具有检测覆盖,且由于数据源配置错误,13% 的现有规则无法正常工作。系统化的覆盖率映射可识别空白、优先排序规则开发,并随时间跟踪检测成熟度。ATT&CK v18.1(2025 年 12 月)是最新版本。
## 前置条件
- 访问 MITRE ATT&CK Navigator(https://mitre-attack.github.io/attack-navigator/)
- 所有活跃 SIEM 检测规则的清单
- 每条检测规则的 MITRE ATT&CK 技术映射
- 数据源清单(已接入哪些日志源)
- 了解与所在行业相关的对手威胁画像
## 覆盖率映射流程
### 步骤 1:导出当前检测规则
```spl
# Splunk ES - 导出所有带 MITRE 映射的活跃关联搜索
| rest /services/saved/searches
| search disabled=0 action.correlationsearch.enabled=1
| table title, search, action.notable.param.security_domain,
action.notable.param.severity, action.correlationsearch.annotations
| eval mitre_techniques=mvfilter(match('action.correlationsearch.annotations', "mitre_attack"))
```
```kql
// Microsoft Sentinel - 导出带 MITRE 映射的分析规则
SecurityAlert
| summarize count() by AlertName, ProductName
| join kind=inner (
resources
| where type == "microsoft.securityinsights/alertrules"
| extend tactics = properties.tactics
) on $left.AlertName == $right.name
```
### 步骤 2:构建覆盖率矩阵
#### ATT&CK Navigator 层格式
```json
{
"name": "SOC Detection Coverage - 2025",
"versions": {
"attack": "16",
"navigator": "5.1",
"layer": "4.5"
},
"domain": "enterprise-attack",
"description": "Current detection coverage mapping",
"techniques": [
{
"techniqueID": "T1110",
"tactic": "credential-access",
"color": "#00ff00",
"comment": "2 active rules - Brute Force detection via EventCode 4625",
"score": 75,
"metadata": [
{"name": "rule_count", "value": "2"},
{"name": "data_sources", "value": "Windows Security Log, Linux Auth"},
{"name": "last_validated", "value": "2025-01-15"}
]
},
{
"techniqueID": "T1059.001",
"tactic": "execution",
"color": "#00ff00",
"comment": "3 rules - PowerShell Script Block Logging",
"score": 85
},
{
"techniqueID": "T1055",
"tactic": "defense-evasion",
"color": "#ff0000",
"comment": "NO DETECTION - Requires Sysmon EventCode 8/10",
"score": 0
}
],
"gradient": {
"colors": ["#ff0000", "#ffff00", "#00ff00"],
"minValue": 0,
"maxValue": 100
}
}
```
### 步骤 3:为每项技术评分
| 分数 | 颜色 | 含义 | 评判标准 |
|------|------|------|----------|
| 0 | 红色 | 无检测 | 无规则,缺少数据源 |
| 25 | 橙色 | 极少 | 规则存在但未验证/测试 |
| 50 | 黄色 | 部分 | 规则有效但覆盖有限 |
| 75 | 浅绿 | 良好 | 已验证规则且数据源充足 |
| 100 | 绿色 | 优秀 | 多条已验证规则,经仿真测试 |
### 评分标准详解
```
分数 = 数据源得分(0-25)+ 规则质量得分(0-25)+
验证得分(0-25)+ 富化得分(0-25)
数据源得分:
25:所有必需数据源已接入并解析
15:主要数据源可用
5: 数据源覆盖不完整
0: 所需数据源不可用
规则质量得分:
25:规则使用 CIM 合规查询并设置适当阈值
15:规则有效但可能产生误报
5: 基础规则未经调优
0: 无检测规则
验证得分:
25:通过对手仿真(Atomic Red Team)验证
15:使用合成数据测试
5: 逻辑已审查但未测试
0: 未验证
富化得分:
25:包含资产、身份和威胁情报富化的丰富上下文
15:基础富化(资产查询)
5: 无富化
0: 不适用(无规则)
```
### 步骤 4:识别优先空白
#### 空白优先级框架
```
优先级 = 技术流行度 × 影响程度 × 可行性
技术流行度(0-10):
- 基于 MITRE Top Techniques 报告
- 在所在行业威胁态势中的频率
- 在近期事件/数据泄露中的观察情况
影响程度(0-10):
- 技术成功时的破坏潜力
- 恢复难度
- 面临风险的数据敏感性
可行性(0-10):
- 数据源可用性
- 规则复杂度
- 所需工程投入
```
#### 2025 年需优先覆盖的顶级技术
| 技术 | ID | 流行度 | 典型空白原因 |
|------|-----|--------|-------------|
| 命令和脚本解释器 | T1059 | 极高 | 需要脚本块日志记录 |
| 钓鱼(Phishing) | T1566 | 极高 | 邮件网关集成 |
| 有效账户 | T1078 | 高 | 需要行为基线 |
| 进程注入(Process Injection) | T1055 | 高 | 需要 Sysmon 或 EDR |
| 横向移动(RDP/SMB) | T1021 | 高 | 网络分段可见性 |
| 计划任务/作业 | T1053 | 高 | 事件日志采集 |
| 数据加密影响 | T1486 | 高 | 文件系统监控 |
| 入侵工具传输 | T1105 | 中 | 网络流量分析 |
### 步骤 5:制定检测路线图
```
第一季度:弥补关键空白(评分 0,高流行度)
第 1-2 周:启用缺失数据源
第 3-4 周:为前 5 个空白技术构建并测试规则
第 5-8 周:通过对手仿真验证
第 9-12 周:调优并投入运营
第二季度:提升部分覆盖(评分 25-50)
- 为现有规则添加富化
- 添加辅助检测方法
- 通过紫队演练验证
第三季度:完善良好覆盖(评分 50-75)
- 添加行为分析
- 实施检测即代码流水线
- 跨技术关联规则
第四季度:卓越状态(评分 75-100)
- 使用 BAS 工具持续测试
- 自动化覆盖率回归测试
- 红队验证
```
## 自动化覆盖率评估
### 数据源到技术的映射
```python
# 将可用数据源映射到可检测的技术
DATA_SOURCE_TECHNIQUE_MAP = {
"Windows Security Event Log": [
"T1110", "T1078", "T1053.005", "T1098", "T1136",
"T1070.001", "T1021.001", "T1543.003"
],
"Sysmon": [
"T1055", "T1059", "T1003", "T1547.001", "T1036",
"T1218", "T1105", "T1071"
],
"Network Traffic (Firewall/IDS)": [
"T1071", "T1048", "T1105", "T1572", "T1090",
"T1571", "T1573"
],
"DNS Logs": [
"T1071.004", "T1568", "T1583.001", "T1048.003"
],
"Email Gateway": [
"T1566.001", "T1566.002", "T1534"
],
"Cloud Audit Logs": [
"T1078.004", "T1537", "T1530", "T1580",
"T1087.004", "T1098.001"
],
}
```
## 报告仪表板查询
### 按战术分类的覆盖率摘要
```spl
| inputlookup mitre_coverage_lookup
| stats avg(score) as avg_score count(eval(score=0)) as no_coverage
count(eval(score>0 AND score<50)) as partial
count(eval(score>=50 AND score<75)) as good
count(eval(score>=75)) as excellent
count as total
by tactic
| eval coverage_pct=round((total - no_coverage) / total * 100, 1)
| sort -coverage_pct
```
## 参考资料
- [CyberDefenders - MITRE ATT&CK for SOC & DFIR Analysts](https://cyberdefenders.org/blog/mitre-attack-framework/)
- [MITRE ATT&CK Navigator](https://mitre-attack.github.io/attack-navigator/)
- [CardinalOps - SIEM Detection Coverage Report 2025](https://www.helpnetsecurity.com/2025/06/09/siem-detection-coverage/)
- [Datadog - Cloud SIEM MITRE ATT&CK Map](https://www.datadoghq.com/blog/cloud-siem-mitre-attack-map/)
- [Picus Security - MITRE ATT&CK Framework Guide](https://www.picussecurity.com/mitre-attack-framework)Related Skills
recovering-from-ransomware-attack
按照 NIST 和 CISA 框架执行结构化勒索软件事件恢复,包括环境隔离、取证证据保全、 干净基础设施重建、从已验证备份优先还原系统、凭据重置,以及针对再感染的验证。 涵盖 Active Directory 恢复、数据库还原和按依赖顺序重建应用栈。
performing-web-cache-poisoning-attack
在授权安全测试期间,通过未纳入缓存键的头部和参数毒化缓存响应,利用 Web 缓存机制向其他用户投递恶意内容。
performing-web-cache-deception-attack
通过利用 CDN 缓存层与源服务器之间的路径规范化差异,执行 Web 缓存欺骗攻击,从而缓存并获取敏感的已认证内容。
performing-vlan-hopping-attack
在授权环境中使用交换机欺骗(Switch Spoofing)和双标签(Double Tagging)技术模拟 VLAN 跳转攻击, 测试 VLAN 分段有效性,并验证交换机端口安全配置对二层旁路攻击的抵御能力。
performing-supply-chain-attack-simulation
模拟和检测软件供应链攻击,包括通过 Levenshtein 距离检测域名抢注(Typosquatting)、针对私有注册表的依赖混淆(Dependency Confusion)测试、使用 pip 进行包哈希验证,以及使用 pip-audit 扫描已知漏洞。
performing-ssl-stripping-attack
在授权环境中使用 sslstrip、Bettercap 和 mitmproxy 模拟 SSL 剥离(SSL Stripping)攻击, 测试 HSTS 强制执行、证书验证以及保护用户免受加密连接降级攻击的 HTTPS 升级机制。
performing-packet-injection-attack
在授权安全评估中使用 Scapy、hping3 和 Nemesis 构造并注入自定义网络数据包, 测试防火墙规则、IDS 检测、协议处理能力以及网络协议栈对畸形和伪造流量的抵御能力。
performing-kerberoasting-attack
Kerberoasting 是一种后渗透技术,通过为设置了服务主体名称(SPN)的账户请求 Kerberos TGS 票据来针对活动目录中的服务账户。这些票据用服务账户的 NTLM 哈希加密,允许在不产生登录失败事件的情况下进行离线暴力破解。
performing-jwt-none-algorithm-attack
通过操纵 JSON Web Token 中的 alg 头部字段,执行并测试 JWT None 算法攻击,以绕过签名验证。
performing-http-parameter-pollution-attack
执行 HTTP 参数污染(HPP)攻击,通过注入由前端和后端系统以不同方式处理的重复参数,绕过输入验证、WAF 规则和安全控制。
performing-graphql-depth-limit-attack
使用深度嵌套递归查询执行和测试 GraphQL 深度限制攻击,以识别 GraphQL API 中的拒绝服务(DoS)漏洞。
performing-csrf-attack-simulation
在授权安全评估中,通过构造利用已认证用户会话的伪造请求,测试 Web 应用程序的跨站请求伪造(CSRF)漏洞。