Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

执行 (TA0002)

一句话理解

执行就是攻击者想尽办法让恶意代码在你的电脑上“跑起来“——就像小偷撬开门锁之后,需要在屋里动手翻找东西一样。

战术概述

用大白话说:攻击者入侵系统之后,光“进来“还不够,他得让自己的恶意程序真正运行起来,才能干坏事(比如偷数据、加密勒索、挖矿等)。执行(Execution) 就是攻击者用来让恶意代码在目标系统上跑起来的各种方法。

想象一下,你家的门被撬开了(初始访问),但小偷还得找到开关灯、打开保险柜的方法。执行战术就是攻击者的“开关灯和打开保险柜“——它决定了攻击者能不能真正动手。

执行战术涵盖的方法非常多:利用系统自带的命令行工具(PowerShell、cmd)、编写定时任务自动运行、通过漏洞让浏览器或Office崩溃后执行代码、欺骗用户自己点击运行、甚至劫持正常软件的加载过程。正因为执行手段五花八门,这个战术是整个ATT&CK框架中子技术最多、最复杂的战术之一,包含 20个技术46个子技术

战术在攻击链中的位置

攻击链全景图

graph LR
    A["侦察<br/>TA0043"] --> B["资源开发<br/>TA0042"]
    B --> C["初始访问<br/>TA0001"]
    C --> D["执行<br/>TA0002"]
    D --> E["持久化<br/>TA0003"]
    E --> F["权限提升<br/>TA0004"]
    F --> G["隐蔽<br/>TA0005"]
    G --> H["防御削弱<br/>TA0112"]
    H --> I["凭证访问<br/>TA0006"]
    I --> J["发现<br/>TA0007"]
    J --> K["横向移动<br/>TA0008"]
    K --> L["收集<br/>TA0009"]
    L --> M["命令与控制<br/>TA0011"]
    M --> N["数据窃取<br/>TA0010"]
    N --> O["影响<br/>TA0040"]

    style D fill:#ff6b6b,stroke:#333,stroke-width:4px

当前战术的角色

执行是攻击链中最关键的一环——它紧跟在初始访问之后,是攻击者从“进得来“到“干得了“的转折点。没有执行,之前的所有努力都是白费。执行战术也经常与持久化防御规避横向移动等战术配合使用,是整个攻击链的“发动机“。

前置战术

  • 初始访问(TA0001):攻击者必须先获得对目标系统的基本访问权限(通过钓鱼、漏洞利用等),才能考虑如何执行恶意代码
  • 资源开发(TA0042):攻击者可能需要准备恶意软件、购买漏洞利用工具等资源

后续战术

  • 持久化(TA0003):执行恶意代码后,攻击者通常会建立持久化机制,确保下次还能进来
  • 权限提升(TA0004):执行成功后可能发现权限不够,需要提升到管理员或SYSTEM权限
  • 防御规避(TA0005):执行过程需要绕过安全软件的检测
  • 横向移动(TA0008):在一台机器上执行成功后,攻击者会利用各种技术在网络上横向扩散

技术索引表

技术ID中文名称难度子技术数一句话理解文档状态
T1059命令和脚本解释器13利用系统自带的PowerShell、cmd、Python等工具执行恶意命令✅ 已完成
T1203客户端漏洞利用执行⭐⭐⭐0利用浏览器、Office等软件的漏洞,让恶意代码在用户打开文件时自动运行✅ 已完成
T1204用户执行5骗用户自己点击链接、打开文件、复制粘贴恶意命令来执行代码✅ 已完成
T1053计划任务/作业⭐⭐5利用系统的定时任务功能,在特定时间或事件触发时自动运行恶意代码✅ 已完成
T1047Windows管理规范⭐⭐0利用Windows内置的WMI管理工具执行命令、横向移动、持久化✅ 已完成
T1106原生API⭐⭐⭐0绕过高层API,直接调用操作系统底层函数来执行恶意代码,逃避安全检测✅ 已完成
T1072软件部署工具⭐⭐0劫持企业用的软件分发工具(如SCCM、Ansible),一次性向所有电脑推送恶意软件✅ 已完成
T1127受信任开发工具代理执行⭐⭐3利用MSBuild等合法开发工具执行恶意代码,因为它们是“受信任的“程序✅ 已完成
T1129共享模块⭐⭐0通过替换或劫持DLL等共享库,让正常程序加载恶意代码✅ 已完成
T1197BITS作业0利用Windows后台传输服务下载恶意文件,流量看起来像正常的系统更新✅ 已完成
T1559进程间通信⭐⭐3利用COM、DDE等进程间通信机制在合法进程中执行恶意代码✅ 已完成
T1569系统服务⭐⭐3创建或修改系统服务来执行恶意代码,服务通常开机自启且权限高✅ 已完成
T1574劫持执行流⭐⭐⭐14利用DLL搜索顺序、环境变量等加载机制的漏洞,让程序“不小心“加载恶意代码✅ 已完成
T1609容器管理命令⭐⭐0利用kubectl、docker等容器管理工具执行恶意操作,甚至逃逸到宿主机✅ 已完成
T1610部署容器⭐⭐0向Kubernetes等环境部署恶意容器来运行挖矿、后门等恶意负载✅ 已完成
T1648无服务器执行⭐⭐0利用AWS Lambda、Azure Functions等无服务器平台执行恶意代码✅ 已完成
T1651云管理命令⭐⭐0利用AWS CLI、Azure PowerShell等云管理工具执行恶意操作✅ 已完成
T1674输入注入⭐⭐0伪造键盘鼠标输入来控制受害系统,比如用USB橡皮鸡自动输入恶意命令✅ 已完成
T1675ESXi管理命令⭐⭐0利用VMware ESXi虚拟化管理命令控制虚拟机,甚至加密所有虚拟磁盘✅ 已完成
T1677毒化流水线执行⭐⭐⭐0破坏CI/CD构建流水线,在软件编译过程中注入恶意代码✅ 已完成

子技术索引

子技术ID名称难度一句话理解文档状态
T1053.002At⭐⭐Windows的at命令(已弃用),用于创建一次性计划任务✅ 已完成
T1053.003Cron⭐⭐Linux/macOS的定时任务调度器,通过crontab配置✅ 已完成
T1053.005计划任务⭐⭐Windows的任务计划程序(schtasks.exe),功能最强大✅ 已完成
T1053.006Systemd Timers⭐⭐Linux systemd的定时器,现代Linux系统的cron替代品✅ 已完成
T1053.007容器编排作业⭐⭐Kubernetes CronJob,云原生环境的定时任务✅ 已完成
T1059.001PowerShellWindows下最强大的脚本工具,红队的“瑞士军刀“✅ 已完成
T1059.002AppleScriptmacOS的自动化脚本语言,可以控制应用程序和系统操作✅ 已完成
T1059.003Windows命令行经典的cmd.exe,虽然老但仍被广泛使用✅ 已完成
T1059.004Unix ShellLinux/macOS的bash、zsh等shell,服务器渗透的必备工具✅ 已完成
T1059.005Visual BasicVBA宏和VBScript,Office文档攻击的经典载体✅ 已完成
T1059.006Python跨平台脚本语言,丰富的库生态,常用于编写后门和工具✅ 已完成
T1059.007JavaScript浏览器端脚本,也通过Node.js在服务端运行✅ 已完成
T1059.008网络设备CLI路由器、交换机等网络设备的命令行接口✅ 已完成
T1059.009云API利用云平台的API和CLI工具执行恶意操作✅ 已完成
T1059.010AutoHotKey/AutoITWindows自动化脚本工具,常被恶意软件用来模拟用户操作✅ 已完成
T1059.011Lua轻量级脚本语言,常嵌入在游戏和应用中✅ 已完成
T1059.012虚拟化管理CLIESXi、KVM等虚拟化平台的命令行工具✅ 已完成
T1059.013容器CLI/APIDocker、kubectl等容器管理命令行工具✅ 已完成
T1127.001MSBuild⭐⭐利用微软构建引擎的内联任务功能执行C#/VB代码✅ 已完成
T1127.002ClickOnce⭐⭐利用微软的ClickOnce部署技术通过受信任进程执行代码✅ 已完成
T1127.003JamPlus⭐⭐利用JamPlus构建工具的脚本功能执行恶意命令✅ 已完成
T1204.001恶意链接骗用户点击链接,跳转到恶意网站或触发下载✅ 已完成
T1204.002恶意文件骗用户打开恶意附件或下载的文件✅ 已完成
T1204.003恶意图片/镜像利用恶意的Docker镜像、云镜像等✅ 已完成
T1204.004恶意复制粘贴ClickFix攻击,骗用户复制粘贴恶意命令✅ 已完成
T1204.005恶意库利用恶意的软件包/库✅ 已完成
T1559.001COM⭐⭐利用Windows组件对象模型在合法进程中执行代码✅ 已完成
T1559.002DDE⭐⭐利用Office的动态数据交换功能执行命令(无需宏)✅ 已完成
T1559.003XPC服务⭐⭐利用macOS的轻量级通信机制进行权限提升✅ 已完成
T1569.001Launchctl⭐⭐macOS的服务管理工具,用于加载/卸载Launch Agent和Daemon✅ 已完成
T1569.002服务执行⭐⭐利用Windows服务或Linux systemd服务执行恶意代码✅ 已完成
T1569.003Systemctl⭐⭐Linux的服务管理工具,用于控制systemd服务✅ 已完成
T1574.001DLL搜索顺序劫持⭐⭐⭐在合法DLL之前放置恶意同名DLL✅ 已完成
T1574.004dylib劫持⭐⭐⭐macOS版本的DLL劫持✅ 已完成
T1574.005可执行安装程序文件权限弱点⭐⭐⭐利用安装程序文件的权限漏洞✅ 已完成
T1574.006动态链接器劫持⭐⭐⭐劫持操作系统的动态链接器✅ 已完成
T1574.007PATH劫持⭐⭐⭐在PATH环境变量目录中放置恶意程序✅ 已完成
T1574.008搜索顺序劫持⭐⭐⭐更广泛的搜索顺序利用✅ 已完成
T1574.009未引用路径劫持⭐⭐⭐利用服务路径中未加引号的空格✅ 已完成
T1574.010服务权限劫持⭐⭐⭐利用服务的权限配置漏洞✅ 已完成
T1574.011服务注册表权限弱点⭐⭐⭐利用服务注册表键的权限漏洞✅ 已完成
T1574.012COR_PROFILER劫持⭐⭐⭐利用.NET性能分析器环境变量✅ 已完成
T1574.013KernelCallbackTable劫持⭐⭐⭐劫持进程的内核回调表✅ 已完成
T1574.014AppDomainManager劫持⭐⭐⭐劫持.NET的AppDomain管理器✅ 已完成

统计信息

  • 技术总数:20 个
  • 子技术总数:44 个
  • 已完成文档:44 个
  • 进行中文档:0 个
  • 待编写文档:0 个

推荐阅读顺序

对于红队新手,建议按以下顺序学习执行战术:

入门阶段(第1-2周)

适合零基础的安全爱好者,从最简单、最直观的技术开始。

前置知识: 基本的操作系统概念(进程、文件、服务)、了解命令行是什么

推荐阅读:

  1. T1059 命令和脚本解释器 - 红队的基本功,PowerShell和cmd是最常用的执行手段,几乎所有攻击都会用到
  2. T1204 用户执行 - 社会工程学的核心,ClickFix等技术是2024-2025年最火爆的攻击手法,理解攻击者的“钓鱼“思路
  3. T1053 计划任务/作业 - 持久化的经典方法,几乎每次渗透都会用到,Windows和Linux都有对应的实现
  4. T1047 WMI - Windows横向移动的瑞士军刀,理解“管理工具本身也是攻击工具“的核心思想

学习建议:

  • 先在虚拟机中动手实践T1059的PowerShell命令执行
  • 理解“就地取材“(Living off the Land)攻击哲学

进阶阶段(第3-4周)

适合有一定基础的学习者,开始接触更复杂的技术。

前置知识: 操作系统原理、进程内存模型、网络协议基础

推荐阅读:

  1. T1203 客户端漏洞利用 - 理解漏洞利用的基本原理,浏览器和Office是最常见的攻击入口
  2. T1574 劫持执行流 - DLL劫持是权限提升和防御规避的经典技术,14个子技术覆盖了各种变体
  3. T1106 原生API - 直接系统调用是现代恶意软件逃避EDR的核心技术,理解EDR的盲区
  4. T1197 BITS作业 - 隐蔽下载的经典手法,理解“合法功能被滥用“的攻击模式
  5. T1559 进程间通信 - COM劫持和DDE攻击,理解Windows组件模型的攻防

学习建议:

  • 使用ProcessMonitor和Sysmon观察进程行为和DLL加载
  • 在实验室环境模拟T1574的DLL劫持攻击

高级阶段(第5-6周)

适合有较好技术基础的学习者,深入理解复杂技术原理。

前置知识: 编程基础(C/C++、Python)、系统编程概念

推荐阅读:

  1. T1127 受信任开发工具代理执行 - MSBuild、ClickOnce滥用,理解“信任传递“攻击
  2. T1569 系统服务 - 服务持久化,Windows/Linux/macOS三大平台的持久化技术
  3. T1072 软件部署工具 - 企业环境横向移动,理解IT管理工具的“双刃剑“特性
  4. T1129 共享模块 - 供应链攻击基础,XZ Utils后门是最值得学习的案例

专项领域(面向云安全方向)

适合专注于云原生和容器安全的学习者。

前置知识: 云计算基础、Docker和Kubernetes基本操作、CI/CD概念

推荐阅读:

  1. T1609 容器管理命令 - 容器安全入门
  2. T1610 部署容器 - 容器逃逸与横向移动
  3. T1648 无服务器执行 - Serverless安全
  4. T1651 云管理命令 - 云环境攻击
  5. T1675 ESXi管理命令 - 虚拟化安全
  6. T1677 毒化流水线执行 - CI/CD供应链安全
  7. T1674 输入注入 - 物理攻击与社会工程

参考资料

官方文档

学习资源

相关工具