用途
MITRE ATT&CK(Adversarial Tactics, Techniques, and Common Knowledge)是由 MITRE 公司创建的、全球可访问的对手行为知识库,基于真实世界观测。它已成为描述攻击者如何行动的通用语言。本技能用于将 ATT&CK 框架应用于威胁情报与检测工作。
核心哲学:了解你的对手;你无法防御你不理解的东西。ATT&CK 将关注点从 IOC(攻击者使用什么)转向 TTP(攻击者如何行为),这种以行为为中心的方式提供更持久的检测策略。
主要能力
ATT&CK 矩阵结构(企业矩阵):
战术(TACTICS,即“为什么”——对手目标):侦察、资源开发、初始访问、执行、持久化、权限提升、防御规避、凭据访问、发现、横向移动、收集、命令与控制、数据外泄、影响。
技术(TECHNIQUES,即“如何”——使用的方法):每个战术包含多个技术,技术可含子技术。例如 T1059.001(PowerShell)位于 T1059(命令与脚本解释器)之下。
关键组件:战术(对手目标,如凭据访问)、技术(如何达成目标,如 OS Credential Dumping T1003)、子技术(具体实现,如 LSASS Memory T1003.001)、程序(真实案例,如 APT28 使用 Mimikatz)、缓解措施(如何预防,如 Credential Guard)、检测(如何发现,如监控 LSASS 访问)。
实现时应始终:将检测映射到 ATT&CK 技术;评估所有战术的覆盖;使用 ATT&CK Navigator 可视化;在告警中引用技术编号;跟踪对手组织及其 TTP;随 ATT&CK 演进更新映射。
绝不要:仅凭少量检测就假设全面覆盖;忽视当前无检测的技术;把 ATT&CK 当作合规清单;为夸大覆盖而错误映射;在分析中遗忘子技术。
优先:行为检测优于签名匹配;初期覆盖广度优于深度;基于技术的狩猎假设;与 ATT&CK 对齐的威胁情报;持续覆盖评估。
使用方式
资料提供了若干实现模式与代码示例:
-
ATT&CK 覆盖评估(attack_coverage.py):定义 CoverageLevel 枚举(NONE、MINIMAL、PARTIAL、SUBSTANTIAL、COMPREHENSIVE),Technique 与 Detection 数据类,ATTACKCoverageAnalyzer 类用于加载 ATT&CK STIX 数据、添加检测并更新覆盖、按战术统计覆盖、识别缺口、按对手使用情况排定缺口优先级、生成 ATT&CK Navigator 图层 JSON。
-
基于技术的检测(technique_detection.py):ATTACKDetection 数据类包含技术编号、名称、战术、检测名称、描述、查询、平台、严重性、置信度、误报指引、数据源、建议响应,并可导出为 Sigma 规则。示例为 T1003.001(LSASS Memory)检测。
-
威胁组织跟踪(threat_groups.py):ThreatGroup 数据类包含编号、名称、别名、疑似来源、目标行业、目标地区、技术列表、首次/最后出现、是否活跃,并提供技术重叠与独有技术方法。ThreatIntelligence 类可按行业/地区查找相关组织、按威胁相关性对技术排序、基于威胁态势排定检测优先级。
-
狩猎假设生成(hypothesis_generator.py):HuntHypothesis 数据类包含技术编号、名称、战术、假设、理由、数据需求、狩猎查询、预期发现、成功标准;generate_hypotheses 函数可生成直接技术检测与技术链两类假设。
适用场景
适用于威胁情报分析、检测工程、安全运营中心(SOC)覆盖评估、威胁狩猎、对手组织 TTP 跟踪等安全防御工作。
限制
资料未提供该技能的具体安装命令、收费模式、价格、平台支持范围或效果保证。ATT&CK 数据需从 MITRE 的 STIX bundle 加载,代码示例中相关加载函数为占位实现。