01 · 从 TTP 到检测规则的方法
一条 ATT&CK 技术到一条可执行检测规则,中间有两道翻译:①数据源翻译——该技术需要什么 Data Components(见第3页 §03),本环境是否具备;②特征翻译——把"对手行为"翻译成"可观察、可证伪"的查询特征。规则质量取决于这两道翻译是否扎实,而非编号贴得是否漂亮。
| 翻译环节 | 输入 | 输出 | 质量门 |
|---|---|---|---|
| 数据源翻译 | 技术的 Data Components | 本环境遥测可用性结论(L1) | 缺遥测则规则无效,须先补采集 |
| 特征翻译 | Procedure 行为描述 | 可查询、可证伪的特征(第3页 §4.1) | 特征须对应具体数据源字段 |
| 验证翻译 | 规则 + 原子测试 | L3 实测证据(第3页 §05) | 未实测最高记 50 分(L2) |
02 · 钓鱼链条关键技术 Sigma 规则示例
以下规则覆盖第4、5页钓鱼映射表中的高频技术,tags 均带 attack.* 标签,可经第6页管道反向生成 L2 覆盖视图。规则为社区风格参考实现,落地须按本环境日志源调整 field 名。
规则一:T1566 钓鱼附件落地(进程派生可疑子进程,参考 Sigma 思路)
title: 办公文档派生可疑进程 (T1566.001)
id: 3a1b2c3d-4e5f-6a7b-8c9d-0e1f2a3b4c5d
status: experimental
description: 文档/脚本宿主进程(office, wscript, mshta)派生异常子进程
references:
- https://attack.mitre.org/techniques/T1566/001/
tags:
- attack.initial-access
- attack.t1566.001
logsource:
category: process_creation
product: windows
detection:
selection_parent:
ParentImage|endswith:
- '\\winword.exe'
- '\\excel.exe'
- '\\powerpnt.exe'
- '\\wscript.exe'
- '\\mshta.exe'
selection_child:
Image|endswith:
- '\\cmd.exe'
- '\\powershell.exe'
- '\\rundll32.exe'
condition: selection_parent and selection_child
falsepositives:
- 合法的宏驱动办公自动化
level: high规则二:T1621 MFA 推送轰炸(IdP 审计中的高频批准失败/批准事件)
title: MFA 请求轰炸特征 (T1621)
id: 7f8e9a0b-1c2d-3e4f-5a6b-7c8d9e0f1a2b
status: experimental
description: 单一账号短时间内产生大量 MFA 推送/批准请求
references:
- https://attack.mitre.org/techniques/T1621/
tags:
- attack.credential-access
- attack.t1621
logsource:
category: authentication
product: idp # 如 Entra ID/Okta 审计日志
detection:
selection:
event_action: 'mfa_prompt'
timeframe: 10m
condition: selection | count(user) by user > 10
falsepositives:
- 用户操作失误导致的重试
level: medium规则三:T1490 抑制系统恢复(勒索前删除卷影/停用修复,高优)
title: 卷影副本删除 (T1490)
id: 9c0d1e2f-3a4b-5c6d-7e8f-9a0b1c2d3e4f
status: experimental
description: vssadmin/ wbadmin/ PowerShell 删除卷影副本或停用修复
references:
- https://attack.mitre.org/techniques/T1490/
tags:
- attack.impact
- attack.t1490
logsource:
category: process_creation
product: windows
detection:
selection:
CommandLine|contains:
- 'vssadmin delete shadows'
- 'wmic shadowcopy delete'
- 'wbadmin delete catalog'
condition: selection
falsepositives:
- 合法备份维护
level: critical规则落地提醒:field 名(ParentImage / CommandLine / event_action 等)取决于各 SIEM 与日志源命名,上述为社区通用约定,须按本环境 schema 适配;所有规则仅描述"检测什么",不提供任何攻击实现,符合第1页 §07 合规边界。
03 · EDR 高级查询示例(KQL 风格)
以下查询对应第5页案例B(勒索链)与案例A(钓鱼链)的高杠杆检测点,语义可移植到 Sentinel/KQL、Splunk SPL、Elastic EQL 等后端(字段名以本环境为准)。
查询一:T1003.001 LSASS 内存访问(非系统进程以读取权限访问 lsass.exe)
// DeviceProcessEvents: 非系统进程打开 lsass.exe 且请求读取内存
DeviceProcessEvents
| where TargetImage =~ "lsass.exe"
| where ActionType == "ProcessAccess"
| where InitiatingProcessFileName !in~ ("lsass.exe","wininit.exe","csrss.exe","services.exe")
| where AccessMask has_any ("0x1010","0x1410","0x143a","0x1438")
| project TimeGenerated, DeviceName, InitiatingProcessFileName,
InitiatingProcessCommandLine, AccessMask查询二:T1078.004 云账号异常登录(新设备/异常地理/非常规时段)
// SigninLogs (Entra ID): 同账号出现非常规地理或新设备登录 SigninLogs | where ResultType == 0 | summarize cnt=dcount(Location) by UserPrincipalName, bin(TimeGenerated,1d) | where cnt > 3 // 单日多异常地理登录 | project UserPrincipalName, cnt
查询三:T1557 AitM 会话劫持迹象(无 MFA 事件却产生新会话)
// 关联 IdP MFA 日志与 SaaS 会话日志:存在新会话但无对应 MFA 批准 let mfa = SigninLogs | where AuthenticationRequirement == "multiFactor" | project UserPrincipalName, TimeGenerated; let sess = SaaS_SessionLogs | project UserPrincipalName, SessionStart; sess | join kind=leftanti mfa on UserPrincipalName | where SessionStart between (ago(1d) .. now()) | project UserPrincipalName, SessionStart
注:上述查询为方法示意,AccessMask 具体取值随 EDR 厂商字段定义而异;落地前须对照本环境文档,并以原子测试(第3页 §05)验证触发。
04 · 高级覆盖度度量
第3页的三层度量(L1/L2/L3)回答了"覆盖了多少",高级度量进一步回答"覆盖得是否均衡、是否经得起对抗"。
4.1 按平台/数据源的缺口分析
| 维度 | 度量问题 | 工程动作 |
|---|---|---|
| 平台缺口 | 各平台(Windows/Linux/macOS/Cloud/SaaS/容器/ESXi)的 L3 覆盖率是否均衡? | 对低覆盖平台定向补齐采集与规则(如 ESXi/v18 新增) |
| 数据源缺口 | 技术要求的 Data Components 中,多少已有 L1 遥测? | 输出"无遥测技术清单",优先补采集(第3页 §03) |
| 战术缺口 | 14 个战术中哪些 L3 覆盖率明显偏低? | 通常 Defense Evasion / Collection 是重灾区(第3页 §2.3) |
4.2 回归与稳定性
- 回归频率:L3 实测规则须按季度(或版本更新时)重新跑 Atomic Red Team,防止"曾经有效"退化为"长期沉默"。
- 静默规则率:近 90 天零触发的规则占比纳入健康度看板(第4页 §4.2),处置方式:退役/调优/豁免。
- 撤销编号告警:规则库attack标签中的编号在目标版本已撤销时(v19例:T1562重构为T1685/T1686/T1687),CI质量门应告警并触发重映射工单,禁止静默改名。
05 · 紫色团队度量体系
把第3页的"对抗模拟"与第5页的案例结合,可构建紫色团队度量,衡量"串成攻击链后检测是否仍然有效":
与评估生态对照:这些指标呼应第3页 §07 中独立学术再分析(arXiv:2401.15878)的方法论——其"检测置信度中位数 50%→72%→88.25%"与"Analytic 覆盖率 69.8%→85.5%"正是从产品级评估角度对同类指标的量化,可作为本组织紫队度量的外部基准参照(非排名、非直接比较)。
06 · 覆盖度看板与汇报模板
面向管理层的汇报须避免"涂满矩阵"式误导。本课题建议汇报结构:
- 一张总览:L1/L2/L3 三层覆盖率 + 评估时间窗 + 版本号(必须分层,禁止单一数字)。
- 两张缺口图:按战术的 L3 分布(定位重灾区)+ 按平台的覆盖率(定位薄弱域)。
- 一份行动清单:本周期优先补齐的 Top-N 技术(来自第5页案例交集 / 第6页图层差集)。
- 一项风险声明:明确"覆盖度≠安全",矩阵外未知行为与未实测规则不在统计内(第4页 §05)。
07 · 全子课题收口说明
子课题03《MITRE ATT&CK 框架映射》至此形成完整闭环:
| 页 | 主题 | 解决的问题 |
|---|---|---|
| 1 | 研究总览与框架定位 | 为什么映射、知识全景、版本基线(v17/v18) |
| 2 | 对象模型与 TTP 提取 | 四层模型、STIX 2.1、六步提取与质量门 |
| 3 | 检测覆盖与威胁狩猎 | 三层度量、Navigator、狩猎闭环、评估生态 |
| 4 | 归因与工程落地 | 组织画像、CVE-to-TTP、钓鱼映射、路线图 |
| 5 | 实战案例深度解析 | 两个完整映射案例,方法落地 |
| 6 | 自动化管道与数据工程 | 可运行的 STIX 管道与分发集成 |
| 7 | 云/身份/移动/ICS 矩阵 | 补齐其他域,v18 官方统计 |
| 8 | 检测工程实战(本页) | 规则/查询/高级度量/汇报,闭环收口 |
收口声明(一致性):全子课题以 ATT&CK v17 为历史统计基线、以 v18(2025-10-28)与 v19(2026-04-28,含 v19.1/v19.2 补丁,当前版本)为演进跟踪对象;所有技术编号为官方公开条目;所有统计数据标注版本与官方出处。截至本页,终审核查已修正 v18 发布日(10-28)与评估数据源数(41)两处偏差,其余关键数据经官方与学术论文核验属实。本轮终审同步完成四项史实与引用勘误:①v19起Enterprise"Defense Evasion"拆分为Stealth/Defense Impairment(15战术);②防护能力测试实始于R4(2022)而非R6;③T1219于v17更名Remote Access Tools;④CVE映射学术数据已拆分标注出处(Branescu 2024基线78.88% / McMahon & Olukoya 2025的93.47%与42%→66.7%)。
本节参考来源(第8页)
以下均为真实可查的权威来源,用于支撑本页事实性表述与规则/查询的 API 归属。
Sigma 通用检测规则格式与 attack 标签约定:github.com/SigmaHQ/sigma
MITRE ATT&CK 技术条目(规则 references 指向的权威出处,可按编号复核):attack.mitre.org/techniques
Atomic Red Team(L3 实测基准库):github.com/redcanaryco/atomic-red-team;CALDERA:github.com/mitre/caldera
独立学术再分析(评估指标外部基准):arXiv:2401.15878《Decoding the MITRE Engenuity ATT&CK Enterprise Evaluation》(AsiaCCS 2024):arxiv.org/abs/2401.15878
MITRE ATT&CK v17/v18 官方统计:updates-april-2025 / updates-october-2025
MITRE ATT&CK v19官方发布说明(2026-04-28,含v19.1/v19.2;T1562→T1685/1686/1687重构的权威出处):attack.mitre.org/resources/updates/updates-april-2026