2、ATT&CK for Enterprise:企业版矩阵概览
好,咱们正式开始聊企业版矩阵。
说实话,我第一次看到ATT&CK矩阵的时候,第一反应是——这玩意儿也太大了。14个战术阶段,密密麻麻的技术点,感觉像在看一张网络攻防的“清明上河图”。但你别被它的体量吓到,其实它的逻辑特别清晰。
2.1 矩阵长什么样?
企业版矩阵,说白了就是一张大表。横轴是战术阶段,纵轴是技术分类。我习惯把它想象成一个“攻击者的行动路线图”。
举个例子,一个攻击者想偷你的数据,他得先干嘛?
- 先侦察你(侦察)
- 再准备工具(资源开发)
- 然后想办法进你的网络(初始访问)
- 进去之后执行恶意代码(执行)
- 还得想办法赖着不走(持久化)
- 顺便提个权(权限提升)
- 躲过你的监控(防御规避)
- 偷你的账号密码(凭据访问)
- 看看你网络里都有啥(发现)
- 横向扩散到其他机器(横向移动)
- 收集有价值的信息(收集)
- 建立通信通道(命令与控制)
- 把数据打包带走(数据窃取)
- 最后搞点破坏(影响)
嗯,14步,一步不少。这就是整个矩阵的骨架。
2.2 14个战术阶段详解
咱们一个一个来过,我挑几个重点的聊聊我的实战体会。
2.2.1 侦察(Reconnaissance)
这是攻击者最“安静”的阶段。他们不会直接动手,而是先收集信息。比如扫你的子域名、查你的员工邮箱、翻你的GitHub代码库。
我遇到过的情况:有一次做红队演练,我们光靠LinkedIn上的员工信息,就拼出了目标公司的内网IP段。你想想看,这信息泄露有多可怕。
2.2.2 资源开发(Resource Development)
攻击者开始“造子弹”了。比如搭建钓鱼网站、购买域名、开发恶意软件。这个阶段其实很容易被忽略,但它是攻击成功的关键。
2.2.3 初始访问(Initial Access)
这是攻防对抗的第一道防线。常见手法包括:钓鱼邮件、漏洞利用、水坑攻击、通过可信关系入侵。
核心观点:初始访问的成功率,往往取决于侦察阶段的信息质量。侦察做得越细,初始访问就越精准。
2.2.4 执行(Execution)
攻击者终于“动手”了。他们会在目标系统上运行恶意代码。常见方式有:
- 通过命令行执行
- 利用脚本(PowerShell、Python)
- 借助系统工具(如WMI、计划任务)
我个人建议,重点关注PowerShell的执行日志。很多攻击者都喜欢用它,因为它既强大又隐蔽。
2.2.5 持久化(Persistence)
攻击者不想“打一枪就跑”。他们会想办法让自己下次还能进来。比如:
- 创建计划任务
- 修改注册表启动项
- 安装服务
- 添加SSH公钥
避坑指南:我曾经遇到过一个案例,攻击者把恶意DLL注册成了系统服务,重启后自动加载。我们查了三天才找到。所以,对系统服务的监控一定要到位。
2.2.6 权限提升(Privilege Escalation)
普通用户权限能干的事有限。攻击者需要拿到管理员甚至SYSTEM权限。常见手法:
- 利用系统漏洞提权
- 窃取高权限用户的令牌
- 利用错误的权限配置
2.2.7 防御规避(Defense Evasion)
这是攻击者最“烧脑”的阶段。他们要绕过你的杀毒软件、EDR、防火墙。常见手段:
- 代码混淆
- 禁用安全工具
- 使用白名单工具(LOLBins)
- 清除日志
我的经验:很多攻击者会利用系统自带的工具来规避检测,比如用certutil下载文件,用bitsadmin传输数据。这些工具本身是合法的,但被滥用了。你想想看,这怎么防?
2.2.8 凭据访问(Credential Access)
攻击者开始“偷钥匙”了。他们想要你的账号密码、Kerberos票据、SSH密钥。常见手法:
- 键盘记录
- 抓取LSASS进程内存
- DCSync攻击
- 暴力破解
2.2.9 发现(Discovery)
攻击者开始“踩点”。他们想知道:
- 网络里有多少台机器?
- 有哪些域管理员?
- 文件服务器上有什么?
- 安全软件部署情况如何?
说白了,就是“知己知彼”里的“知彼”。
2.2.10 横向移动(Lateral Movement)
攻击者开始“串门”了。他们从一台机器跳到另一台机器,逐步扩大控制范围。常见手法:
- 使用PsExec远程执行
- 利用WMI
- Pass-the-Hash攻击
- 远程桌面
2.2.11 收集(Collection)
攻击者开始“打包”了。他们收集感兴趣的数据,比如:
- 敏感文档
- 数据库内容
- 邮件存档
- 剪贴板内容
2.2.12 命令与控制(Command and Control)
攻击者需要和他们的“大本营”保持通信。常见方式:
- HTTP/HTTPS隧道
- DNS隧道
- 使用云服务作为C2
- 通过社交平台通信
注意:很多C2流量会伪装成正常业务流量。比如用HTTPS加密,或者模仿API调用。单纯的流量分析很难发现,需要结合行为分析。
2.2.13 数据窃取(Exfiltration)
攻击者终于“动手拿货”了。他们把收集到的数据传出去。常见手法:
- 通过C2通道传输
- 上传到云存储
- 通过邮件发送
- 物理拷贝
2.2.14 影响(Impact)
这是攻击者的“最后一击”。他们可能:
- 加密数据勒索
- 删除备份
- 破坏系统
- 篡改数据
嗯,到了这一步,基本就是“图穷匕见”了。
2.3 常用技术举例
咱们挑几个典型的技术,看看它们在矩阵里是怎么体现的。
| 战术阶段 | 技术名称 | 技术ID | 简要说明 |
|---|---|---|---|
| 初始访问 | 鱼叉式钓鱼附件 | T1566.001 | 通过邮件发送恶意附件 |
| 执行 | PowerShell | T1059.001 | 利用PowerShell执行恶意代码 |
| 持久化 | 计划任务 | T1053.005 | 创建计划任务实现持久化 |
| 权限提升 | 令牌窃取 | T1134 | 窃取高权限进程的令牌 |
| 防御规避 | 禁用安全工具 | T1562.001 | 关闭或禁用安全软件 |
| 凭据访问 | LSASS内存转储 | T1003.001 | 从LSASS进程抓取凭据 |
| 横向移动 | 远程服务 | T1021 | 利用远程服务横向移动 |
| 命令与控制 | 应用层协议 | T1071 | 使用HTTP/HTTPS等协议通信 |
这张表,我建议你打印出来贴在工位上。每次做安全分析的时候,对照着看,思路会清晰很多。
2.4 我的使用建议
最后,分享一点我的个人习惯。
我拿到一个告警,不会直接去看日志。我会先问自己:“这个告警对应矩阵里的哪个战术阶段?”
如果是初始访问阶段的告警,那重点看邮件和网络流量。如果是横向移动阶段的告警,那重点看认证日志和远程执行记录。你想想看,这样是不是比大海捞针高效多了?
核心总结:ATT&CK矩阵不是让你背的,是让你用的。把它当成一个思维框架,每次分析都往里面套,慢慢你就会发现,攻击者的套路其实就那么几种。
好,这一章就到这里。下一章咱们聊聊具体的战术阶段怎么落地到检测规则里。