0%

网络攻击杀伤链

02. Cyber Kill Chain® 模型

智能安全事件可观测性 · 攻击阶段参考


一、模型概述

1.1 什么是 Cyber Kill Chain

Cyber Kill Chain®Lockheed Martin 公司于 2011 年开发,是描述网络攻击各个阶段的数学模型,最初用于描述有针对性的高级持续性威胁(APT)攻击的完整生命周期。

官网: https://www.lockheedmartin.com/en-us/capabilities/cyber/cyber-kill-chain.html
论文: 《Intelligence-Driven Computer Network Defense Supporting Coinfection with an Advanced Persistent Threat》

框架演进:

年份 版本 核心变化
2011 v1.0 原始 7 阶段模型
2013 v1.5 增加 "Weaponization" 细化
2015 v2.0 与 MITRE ATT&CK 映射
2017 v2.5 云环境攻击链扩展
2020 v3.0 勒索软件专项攻击链
2025 v4.0 AI 驱动攻击链

核心价值:

graph LR V1[理解攻击 分解攻击过程] --> V2[识别弱点 发现防御差距] V2 --> V3[优化检测 提升检测能力] V3 --> V4[加速响应 缩短响应时间] V4 --> V5[持续改进 形成防御闭环] style V1 fill:#e3f2fd,stroke:#1565c0 style V2 fill:#e8f5e9,stroke:#2e7d32 style V3 fill:#fff3e0,stroke:#e65100 style V4 fill:#fce4ec,stroke:#c62828 style V5 fill:#f3e5f5,stroke:#7b1fa2

1.2 经典七阶段模型

┌─────────────────────────────────────────────────────────────────────┐
│                    Cyber Kill Chain® 完整攻击链                      │
├─────────────────────────────────────────────────────────────────────┤
│                                                                     │
│  ┌─────────┐   ┌─────────┐   ┌─────────┐   ┌─────────┐             │
│  │ Stage 1 │   │ Stage 2 │   │ Stage 3 │   │ Stage 4 │             │
│  │  侦察   │──▶│ 武器化  │──▶│  投递   │──▶│   利用  │             │
│  │Reconnaissance│Weaponization│Delivery│Exploitation│             │
│  └────┬────┘   └────┬────┘   └────┬────┘   └────┬────┘             │
│       │              │              │              │                │
│       │         ┌─────┴──────────────┘              │                │
│       │         ▼                                   │                │
│       │   ┌─────────┐   ┌─────────┐   ┌─────────┐   │                │
│       └──▶│ Stage 6 │◀──│ Stage 5 │◀──│ Stage 7 │◀──┘                │
│           │ 命令控制 │   │   安装   │   │ 行动完成 │                │
│           │    C2    │   │Installation│Actions on Obj│             │
│           └─────────┘   └─────────┘   └─────────┘              │
│                                                                     │
└─────────────────────────────────────────────────────────────────────┘

1.3 各阶段核心指标

阶段 名称 攻击者目标 防御窗口 业务影响 检测优先级
Stage 1 侦察 Reconnaissance 收集情报 🟡 中
Stage 2 武器化 Weaponization 制作武器 🟡 中
Stage 3 投递 Delivery 送达目标 🔴 极高
Stage 4 利用 Exploitation 执行代码 极短 🔴 高
Stage 5 安装 Installation 建立持久化 🔴 高
Stage 6 命令控制 C2 保持通信 极短 极高 🔴 极高
Stage 7 行动完成 Actions on Objective 达成目的 极高 🔴🔴 紧急

二、Stage 1:侦察(Reconnaissance)

2.1 阶段定义

攻击者目标: 收集目标组织的信息,了解防御薄弱点,为攻击做准备。

侦察本质: 知己知彼,百战不殆。攻击者花费大量时间在侦察阶段,优质的情报收集是成功攻击的关键。

2.2 被动侦察 vs 主动侦察

类型 定义 可检测性 隐蔽性 成本
被动侦察 不直接接触目标,收集公开信息 ⭐⭐ ⭐⭐⭐⭐⭐
主动侦察 直接探测目标,发现开放端口/漏洞 ⭐⭐⭐⭐ ⭐⭐
社会工程侦察 利用人性弱点获取信息 ⭐⭐⭐ ⭐⭐⭐

2.3 被动侦察方法详解

搜索引擎情报 (OSINT):

方法 工具 收集内容
Google Hacking Google Search 配置错误、敏感文件
域名信息 WHOIS、RDAP 注册信息、DNS 服务器
证书查询 crt.sh、Censys 子域名、指纹
邮箱收集 theHarvester、Hunter 员工邮箱、组织结构
社交媒体 LinkedIn、Twitter 员工信息、技术栈

DNS 侦察技术:

# 基础域名查询
dig example.com NS
dig example.com MX
dig example.com TXT

# 子域名枚举
amass enum -passive -d example.com
subfinder -d example.com

# DNS 区域传送
dig axfr example.com @ns1.example.com

# 反向 DNS
dig -x 192.0.2.1

GitHub 侦察:

搜索内容 GitHub Dork 示例
密码泄露 filename:.env password=
API Keys filename:config.json api_key
数据库配置 filename:database.yml mysql
源代码 path:appveyor.yml username
内部文档 org:target internal confidential

2.4 主动侦察方法详解

网络扫描:

工具 用途 检测难度
Nmap 端口扫描、服务发现 ⭐⭐⭐⭐
Masscan 高速端口扫描 ⭐⭐⭐⭐⭐
RustScan 现代端口扫描 ⭐⭐⭐⭐
Zmap 互联网扫描 ⭐⭐⭐⭐⭐

漏洞扫描:

工具 覆盖范围 检测难度
Nessus 全面漏洞扫描 ⭐⭐⭐⭐
OpenVAS 开源漏洞扫描 ⭐⭐⭐
Nexpose 企业漏洞管理 ⭐⭐⭐⭐
Nikto Web 服务器扫描 ⭐⭐⭐

典型扫描行为特征:

端口扫描特征:
  - TCP SYN 扫描: 大量 SYN 包,不同端口
  - TCP CONNECT: 完成三次握手
  - UDP 扫描: 开放端口无响应
  
检测阈值:
  - 15分钟内扫描 > 100端口
  - 来自单一源 IP 的高频扫描
  - 扫描时间集中在夜间/周末

2.5 社会工程侦察

常见手法:

方法 说明 目标信息
电话钓鱼 伪装 IT 人员索取密码 凭据
LinkedIn 钓鱼 伪装猎头/合作方 员工信息
现场侦察 物理进入、WiFi 嗅探 物理安全
垃圾箱搜索 翻找垃圾文件 敏感文件

2.6 侦察阶段检测

检测矩阵:

数据源 检测特征 阈值 告警级别
DNS 日志 异常域名查询 > 100次/小时 🟡 中
DNS 日志 DNSSEC 失败查询 持续出现 🟡 中
NetFlow 端口扫描模式 > 50端口/分钟 🔴 高
WAF 日志 扫描行为 检测到扫描特征 🟡 中
邮件网关 钓鱼目标搜索 异常邮件查询 🟡 中
Proxy 日志 Google Dorking 搜索敏感词 🟢 低

防御建议:

防御措施:
├── 限制 DNS 查询频率
├── 部署 IDS/IPS
├── 配置蜜罐服务
├── 员工安全意识培训
└── 定期安全审计

三、Stage 2:武器化(Weaponization)

3.1 阶段定义

攻击者目标: 将恶意代码与载体结合,制作可利用的攻击工具。

武器化本质: 把"子弹"装入"枪膛",准备发射。

3.2 常见武器类型

恶意文档:

类型 格式 利用方式 检测难度
Office 宏病毒 .docm, .xlsm VBA 宏执行 ⭐⭐
Office 漏洞文档 .doc, .xls CVE 漏洞 ⭐⭐⭐⭐
PDF 恶意文件 .pdf JavaScript 漏洞 ⭐⭐⭐
RTF 恶意文件 .rtf 栈溢出 ⭐⭐⭐⭐

恶意软件类型:

类型 功能 示例 检测难度
远控木马 (RAT) 远程控制 Cobalt Strike, PlugX ⭐⭐⭐
勒索软件 文件加密 LockBit, REvil ⭐⭐
窃密木马 凭据窃取 RedLine, Raccoon ⭐⭐
僵尸网络 DDoS/挖矿 Mirai, Emotet ⭐⭐⭐
无文件恶意软件 内存驻留 PowerShell 负载 ⭐⭐⭐⭐

Web Shell:

类型 语言 特征
Webshell PHP/ASP/JSP 后门文件
一句话木马 多种 简短代码
冰蝎 Java 加密通信
哥斯拉 ASP.NET 加密通信

3.3 武器化流程

graph LR subgraph 武器化流水线 W1[漏洞研究] --> W2[Exploit 开发] W2 --> W3[Payload 定制] W3 --> W4[载体选择] W4 --> W5[捆绑打包] W5 --> W6[免杀处理] W6 --> W7[测试验证] W7 --> W8[交付部署] end style W1 fill:#fff3e0,stroke:#e65100 style W6 fill:#fce4ec,stroke:#c62828 style W7 fill:#e3f2fd,stroke:#1565c0

3.4 免杀技术详解

常用免杀技术:

技术 说明 检测绕过能力
加壳 (Packing) UPX、AES 加密 ⭐⭐⭐
代码混淆 变量混淆、控制流平坦化 ⭐⭐⭐
内存混淆 进程注入、Module Stomping ⭐⭐⭐⭐
数字签名 盗用签名、白签名 ⭐⭐⭐⭐
白名单绕过 Living Off the Land ⭐⭐⭐⭐⭐
无文件技术 WMI Event、PowerShell ⭐⭐⭐⭐⭐

常用免杀工具:

工具 功能 使用场景
Veil 生成免杀 Payload Cobalt Strike
Shellter 注入式加壳 逃避 AV
Unicorn PowerShell 混淆 无文件攻击
Meta Twin 签名盗用 白签名绕过

3.5 武器化检测

沙箱检测指标:

行为 检测特征 说明
进程行为 创建可疑进程 cmd.exe → powershell.exe
注册表 修改启动项 Run 键写入
网络行为 连接 C2 服务器 DNS/HTTP 请求
文件行为 创建可执行文件 写入 System32
加密行为 检测反沙箱 检测虚拟机

样本特征检测:

高危样本特征:
  - 熵值 > 7.0 (加密/加壳)
  - 包含可疑字符串: password, cmd.exe, powershell
  - 导入表异常: LoadLibrary, GetProcAddress
  - 资源节包含可执行代码

四、Stage 3:投递(Delivery)

4.1 阶段定义

攻击者目标: 将攻击武器送达目标,这是攻击链中第一个与受害者直接交互的阶段。

关键统计: 65% 的初始访问通过钓鱼邮件实现。

4.2 投递方式分布

📊 初始访问向量统计 (Verizon DBIR 2024)

🔴 钓鱼邮件攻击 ───────────────────── 45%
🟠 恶意网站/水坑 ─────────────────── 20%
🟠 远程服务弱口令 ─────────────────── 15%
🟡 供应链攻击 ───────────────────── 10%
🟢 物理访问 ───────────────────────── 5%
🟢 其他 ──────────────────────────── 5%

4.3 钓鱼邮件投递详解

钓鱼邮件攻击链:

graph LR A[攻击者] --> B[钓鱼邮件] B --> C{邮件类型} C -->|附件| D1[恶意文档] D1 --> E1[用户打开] E1 --> F1[启用宏] F1 --> G1[代码执行] C -->|链接| D2[钓鱼网站] D2 --> E2[用户点击] E2 --> F2[凭据输入] F2 --> G2[凭证收割] C -->|BEC| D3[伪冒邮件] D3 --> E3[转账指令] E3 --> F3[财务欺诈] style G1 fill:#fce4ec,stroke:#c62828 style G2 fill:#fce4ec,stroke:#c62828 style F3 fill:#fce4ec,stroke:#c62828

钓鱼邮件类型:

类型 说明 检测难度 危害程度
群发钓鱼 广撒网式
鱼叉钓鱼 定向目标 ⭐⭐⭐
商业邮件欺诈 (BEC) 伪冒高管 ⭐⭐⭐⭐ 极高
语音钓鱼 (Vishing) 电话诈骗 ⭐⭐⭐

钓鱼邮件检测特征:

检测规则: Phishing_Email_Detection
条件:
  - 发件人域名 ≠ 声称的域名
  - 包含短链接 (< 20 字符)
  - 附件为可执行文件 (.exe, .js, .vbs)
  - 正则匹配: "invoice|payment|urgent|account"
  - SPF/DKIM/DMARC 验证失败
严重级别: High
动作:
  - 隔离邮件
  - 通知安全团队
  - 创建事件工单

4.4 恶意网站投递

水坑攻击 (Watering Hole):

攻击者入侵目标组织经常访问的网站,等待目标访问时感染。

路过式下载 (Drive-by Download):

用户访问恶意网站时,自动下载并执行恶意代码。

攻击流程:

1. 侦察 ──▶ 发现目标常访问网站
2. 入侵 ──▶ 篡改网站,植入恶意代码
3. 等候 ──▶ 用户访问网站
4. 感染 ──▶ 自动下载/浏览器漏洞利用
5. 控制 ──▶ 建立持久化

4.5 USB 介质投递

攻击场景:

类型 说明 检测难度
恶意 U 盘 物理放置恶意 U 盘
USB 充电攻击 仅充电却访问数据 ⭐⭐
BadUSB USB 固件篡改 ⭐⭐⭐⭐⭐
键盘注入器 伪装成键盘输入恶意命令 ⭐⭐⭐⭐

4.6 供应链投递

攻击路径:

攻击者 ──▶ 第三方供应商 ──▶ 软件更新 ──▶ 用户系统
              │
              ▼
        入侵开发环境
        篡改源代码
        发布恶意更新

著名案例:

事件 年份 影响 攻击手法
SolarWinds 2020 18000+ 企业 更新包植入后门
CCleaner 2017 230万用户 开发环境篡改
NotPetya 2017 全球损失 $10B M.E.Doc 更新污染
3CX 2023 数百企业 供应链投毒

4.7 投递阶段检测

边界防护检测矩阵:

设备 检测内容 技术手段
邮件网关 恶意附件、钓鱼链接 文件扫描、URL 分析、沙箱
WAF Web 攻击、恶意上传 签名匹配、行为分析
防火墙 可疑出站连接 状态检测、IPS
DNS 过滤 恶意域名解析 DNSRPZ、威胁情报
沙箱 可疑文件行为 动态执行分析
浏览器隔离 Web 内容安全 远程浏览器隔离 (RBI)

五、Stage 4:利用(Exploitation)

5.1 阶段定义

攻击者目标: 利用漏洞或弱点执行恶意代码,获取系统访问权限。

利用本质: 打开攻击的"大门",进入目标系统。

5.2 漏洞利用类型

按利用方式分类:

类型 说明 示例 检测难度
RCE 远程代码执行 EternalBlue, Log4Shell ⭐⭐⭐⭐
本地提权 提升当前权限 Dirty Pipe, MS16-032 ⭐⭐⭐
SQL 注入 数据库操作 UNION 注入、盲注 ⭐⭐
XSS 前端脚本执行 存储型 XSS ⭐⭐
CSRF 跨站请求伪造 状态更改操作 ⭐⭐

按攻击向量分类:

类型 说明 示例 检测难度
网络漏洞 远程利用 RDP 漏洞、VPN 漏洞 ⭐⭐⭐
客户端漏洞 用户触发 浏览器漏洞、Office 漏洞 ⭐⭐
0-day 未知漏洞 APT 组织独有漏洞 ⭐⭐⭐⭐⭐
N-day 已公开漏洞 补丁未修复 ⭐⭐

5.3 漏洞利用流程

graph LR subgraph 利用流程 E1[漏洞发现] --> E2[漏洞分析] E2 --> E3[PoC 开发] E3 --> E4[Exploit 编写] E4 --> E5[Payload 封装] E5 --> E6[目标投递] E6 --> E7[代码执行] end style E7 fill:#fce4ec,stroke:#c62828

5.4 无文件攻击(Fileless Attack)

定义: 不依赖文件落地,直接在内存中执行攻击代码。

技术类型:

技术 说明 示例 检测难度
PowerShell 攻击 使用 PowerShell 执行恶意代码 Invoke-Mimikatz ⭐⭐⭐⭐
WMI 攻击 使用 WMI 执行代码 WMI Event Consumer ⭐⭐⭐⭐
HTA 攻击 HTML Application 执行 恶意 HTA 文件 ⭐⭐⭐
Office 宏攻击 VBA 执行恶意代码 恶意宏文档 ⭐⭐
内存注入 进程注入、 DLL 注入 Process Hollowing ⭐⭐⭐⭐

PowerShell 无文件攻击链:

1. 混淆脚本 ──▶ Base64 编码
2. 执行 ──▶ powershell -enc <encoded>
3. 下载 ──▶ IEX DownloadString
4. 内存执行 ──▶ 不落地执行

5.5 利用阶段检测

检测矩阵:

数据源 检测特征 告警级别
EDR Office → PowerShell 进程链 🔴 高
EDR 异常进程创建、注入 🔴 高
HIDS 栈溢出、可疑 shellcode 🔴🔴 极高
NIDS 漏洞利用特征流量 🔴 高
系统日志 认证异常、短时多次失败 🟡 中
应用日志 SQL 注入、XSS 攻击特征 🟡 中

EDR 检测规则示例:

规则名称: Exploitation_PowerShell_Detection
条件:
  - 进程是 powershell.exe
  - 父进程是 office 或 explorer
  - 命令行包含 encoded/base64
严重级别: High
检测数据源: EDR Process Events

规则名称: Exploitation_Memory_Injection
条件:
  - 检测进程内存写入另一个进程
  - 写入的代码段包含MZ头
严重级别: Critical
检测数据源: EDR Memory Events

六、Stage 5:安装(Installation)

6.1 阶段定义

攻击者目标: 建立持久化,保持对系统的长期控制,即使系统重启或凭据更改也能继续访问。

持久化本质: 在目标环境中"扎根",实现长期潜伏。

6.2 Windows 持久化技术

注册表持久化:

技术 注册表路径 说明 检测难度
Run 键 HKCU\...\Run 用户登录执行 ⭐⭐⭐
RunOnce HKCU\...\RunOnce 单次执行 ⭐⭐⭐
Services HKLM\...\Services 服务创建 ⭐⭐⭐
IFEO HKLM\...\FileOpenName 镜像劫持 ⭐⭐⭐⭐

计划任务持久化:

技术 命令 检测难度
schtasks schtasks /create /tn ⭐⭐⭐
at at \\hostname time command (旧) ⭐⭐
cron Linux 计划任务 ⭐⭐
Systemd Timer Linux 定时任务 ⭐⭐⭐

服务持久化:

graph TB S["服务持久化"] --> S1["Windows 服务"] S --> S2["Linux 服务"] S --> S3["驱动程序"] S1 --> S1a["sc create"] S1 --> S1b["Regsvr32"] S2 --> S2a["systemd service"] S2 --> S2b["/etc/init.d"] style S1a fill:#fff,stroke:#c62828 style S2a fill:#fff,stroke:#2e7d32

WMI 持久化:

技术 说明 检测难度
Permanent Event Consumer 永久 WMI 事件订阅 ⭐⭐⭐⭐⭐
ActiveScriptEventConsumer VBS/JS 执行 ⭐⭐⭐⭐⭐
CommandLineEventConsumer 命令执行 ⭐⭐⭐⭐⭐

启动文件夹持久化:

位置 路径 检测难度
用户启动 %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup
系统启动 %ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup ⭐⭐
Linux ~/.bashrc Shell 初始化脚本 ⭐⭐

6.3 Linux 持久化技术

技术 路径/命令 检测难度
SSH Key ~/.ssh/authorized_keys ⭐⭐
Cron /etc/cron.d, crontab -e ⭐⭐
rc.local /etc/rc.local ⭐⭐
Systemd /etc/systemd/system/ ⭐⭐⭐
Startup /etc/init.d/ ⭐⭐
LD_PRELOAD 环境变量劫持 ⭐⭐⭐⭐
Rootkit 内核模块 ⭐⭐⭐⭐⭐

6.4 持久化检测策略

检测矩阵:

检测点 说明 方法 覆盖技术
服务创建 非预期服务 服务创建监控 Windows 服务
计划任务 异常调度任务 任务调度审计 schtasks
注册表 Run 键异常 注册表监控 Run 键、IFEO
后门文件 Webshell 文件完整性 Webshell
SSH Key 未授权 Key authorized_keys 监控 SSH Key
异常进程 可疑持久化进程 启动项审计 各类持久化

持久化检测命令:

# Windows: 检查 Run 键
reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Run

# Windows: 检查计划任务
schtasks /query /fo LIST /v

# Windows: 检查服务
sc query type= service state= all

# Linux: 检查 cron
cat /etc/crontab
ls -la /etc/cron.d/

# Linux: 检查 SSH Key
cat ~/.ssh/authorized_keys

# Linux: 检查启动项
ls -la /etc/init.d/
systemctl list-unit-files

七、Stage 6:命令控制(Command and Control)

7.1 阶段定义

攻击者目标: 与被控系统保持通信,远程接收指令、发送数据,实现对目标的持续控制。

C2 本质: 攻击者的"神经中枢",所有后续行动都依赖 C2 通信。

7.2 C2 协议类型详解

协议 端口 特征 检测难度 隐蔽性
HTTP/S 80/443 伪装正常 Web 流量 ⭐⭐⭐ ⭐⭐⭐
DNS 53 低速、穿透防火墙 ⭐⭐⭐⭐ ⭐⭐⭐⭐⭐
ICMP - 极隐蔽、慢速 ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐
SSH 22 加密隧道 ⭐⭐⭐ ⭐⭐⭐⭐
SMB 445 横向通信 ⭐⭐ ⭐⭐
TCP/UDP 任意 自定义协议 ⭐⭐⭐⭐ ⭐⭐

协议选择策略:

选择依据:
├── 出站限制: HTTP/S (80/443) 通常最开放
├── 检测规避: DNS/ICMP 避开深度包检测
├── 带宽需求: HTTP/S 支持大流量
└── 隐蔽需求: DNS/ICMP 流量极小

7.3 C2 通信模式

HTTP/S C2 通信:

受害者 ──▶ HTTP POST ──▶ C2 服务器
         ◀── 200 OK + 指令 ◀──

特征:
- 固定间隔心跳
- 特定 User-Agent
- JA3/JA4 指纹可识别

DNS C2 通信:

受害者 ──▶ DNS 查询 (编码数据) ──▶ DNS 服务器 ──▶ C2 服务器
         ◀── DNS 响应 (指令) ◀──

数据编码方式:
- 随机子域名
- DNS TXT 记录
- DNS-over-HTTPS

C2 心跳检测:

框架 心跳间隔 变化特征
Cobalt Strike 60s (默认) 可配置
Metasploit 30s 固定
Mythic 随机 Jitter 参数
Sliver 可配置 随机变化

7.4 知名 C2 框架

框架 语言 特点 检测难度
Cobalt Strike Java 完整 C2、Aggressor 脚本 ⭐⭐⭐
Metasploit Ruby 框架+模块、MSF console ⭐⭐⭐
Mythic Python/Go 跨平台、现代设计 ⭐⭐⭐
Covenant C# .NET 生态、Web UI ⭐⭐⭐
Sliver Go 跨平台、EDR 规避 ⭐⭐⭐⭐
Brute Ratel C 绕过 AV、定制化 C2 ⭐⭐⭐⭐⭐
PoshC2 Python/PowerShell 纯 PowerShell ⭐⭐⭐⭐

7.5 JA3/JA4 TLS 指纹检测

JA3 计算流程:

TLS Client Hello 包含:
├── TLS 版本
├── 密码套件列表
├── 扩展列表
└── 椭圆曲线

组合 → MD5 哈希 = JA3 指纹

JA3 示例:

正常浏览器:
JA3: 4bf7e17d73f46c0e29c1a532ba8ed0e9

Cobalt Strike:
JA3: a0e9f5d64349fd1c5e7a5a5e7b5d1c5e

检测规则:
  - 白名单: 已知正常 JA3 列表
  - 黑名单: 已知恶意 JA3 列表
  - 异常: 不在白名单也非黑名单 → 告警

7.6 C2 检测策略

检测矩阵:

检测方法 说明 准确率 覆盖协议
JA3/JA4 指纹 TLS 客户端指纹 > 90% HTTP/S
DNS Tunnel 检测 查询频率、编码特征 > 85% DNS
心跳检测 C2 心跳间隔异常 > 80% 所有
DGA 检测 随机域名生成算法 > 85% DNS
横向行为 SMB/RDP 异常 > 75% SMB/RDP

C2 检测规则:

规则名称: C2_HTTP_Beaconing
条件:
  - 同一外部 IP 持续连接
  - 请求间隔固定 (偏差 < 10%)
  - 请求大小相似 (偏差 < 20%)
  - JA3 不在白名单
严重级别: Critical

规则名称: DNS_Tunneling_Detection
条件:
  - DNS 查询频率 > 50次/分钟
  - 子域名长度 > 50字符
  - 查询非白名单域名
  - TXT 记录查询异常
严重级别: High

八、Stage 7:行动完成(Actions on Objective)

8.1 阶段定义

攻击者目标: 完成最终攻击意图,可能是数据窃取、勒索、破坏或维持访问。

行动本质: 攻击的"收获"阶段,所有前期工作都是为了这一刻。

8.2 攻击意图分类

意图 说明 检测难度 业务影响
数据窃取 敏感数据外传 ⭐⭐⭐⭐ 极高
勒索加密 文件加密勒索 ⭐⭐ 极高
破坏性攻击 数据销毁、系统瘫痪 ⭐⭐ 灾难性
长期控制 建立长期据点 ⭐⭐⭐

8.3 数据窃取攻击链

graph LR subgraph 数据窃取流程 T1[内部侦察] --> T2[数据定位] T2 --> T3[权限提升] T3 --> T4[数据收集] T4 --> T5[数据打包] T5 --> T6[数据外传] T6 --> T7[痕迹清除] end style T5 fill:#fff3e0,stroke:#e65100 style T6 fill:#fce4ec,stroke:#c62828

数据窃取检测点:

阶段 检测特征 告警级别
内部侦察 异常文件访问、权限查询 🟡 中
数据定位 访问敏感目录、大量文件列举 🟡 中
权限提升 获得高权限、访问敏感数据 🔴 高
数据收集 大量文件读取、压缩打包 🔴 高
数据打包 创建压缩文件、异常加密 🔴 高
数据外传 异常上传、非标准协议外传 🔴🔴 极高

8.4 勒索软件攻击链

勒索攻击七阶段:

Stage 1: 初始入侵 ──▶ 钓鱼邮件、RDP 弱口令
Stage 2: 权限获取 ──▶ 凭据窃取、提权
Stage 3: 内网扩散 ──▶ 横向移动、凭据重用
Stage 4: 数据收集 ──▶ 敏感文件定位
Stage 5: 数据打包 ──▶ 加密打包、准备外传
Stage 6: 文件加密 ──▶ AES+RSA 双重加密
Stage 7: 勒索信息 ──▶ 勒索页面、赎金要求

勒索加密检测:

规则名称: Ransomware_Encryption_Detection
条件:
  - 进程操作 > 100 个文件/分钟
  - 检测到卷影删除命令 (vssadmin, wbadmin)
  - 检测到文件扩展名变更 (.encrypted, .locked)
  - 检测到勒索信息文件 (READ_ME.txt, *.html)
  - 进程尝试停止安全服务
严重级别: Critical
动作:
  - 立即隔离主机
  - 停止进程
  - 备份当前状态
  - 触发勒索响应预案

8.5 破坏性攻击

攻击类型:

类型 说明 影响 检测难度
数据销毁 磁盘擦除、文件删除 数据永久丢失 ⭐⭐
系统瘫痪 停止关键服务 业务中断 ⭐⭐
物理破坏 硬件损坏 (需物理访问) 设备损坏 ⭐⭐⭐⭐⭐

NotPetya 攻击链:

1. M.E.Doc 更新 ──▶ 初始感染
2. WMExec ──▶ 本地扩散
3. PsExec ──▶ 横向移动
4. 凭据窃取 ──▶ 哈希传递
5. 永恒之蓝 ──▶ 进一步扩散
6. Disk wipe ──▶ MBT 覆写

8.6 行动阶段检测

关键检测点:

动作 检测特征 数据源 告警级别
数据打包 大量文件压缩、异常加密 EDR 🔴🔴 极高
卷影删除 vssadmin delete shadows Windows Event 🔴🔴 极高
文件加密 大量文件操作、扩展名变更 EDR 🔴🔴 极高
服务停止 关键服务终止 System Log 🔴 高
凭据访问 LSASS 进程访问、SAM 读取 Security Log 🔴 高
数据外传 异常上传流量、大文件外传 NDR/DLP 🔴🔴 极高

九、防御阶段模型

9.1 纵深防御架构

graph TB subgraph 纵深防御矩阵 D1[边界层 防火墙/WAF/邮件网关] --> D2[网络层 分段/NDR/IDS] D2 --> D3[终端层 EDR/防病毒/应用控制] D3 --> D4[应用层 身份认证/权限控制] D4 --> D5[数据层 加密/备份/DLP] end style D1 fill:#e3f2fd,stroke:#1565c0 style D5 fill:#fce4ec,stroke:#c62828

9.2 各阶段防护措施

Kill Chain 阶段 预防措施 检测措施 响应措施
侦察 最小化暴露面 流量监控、威胁情报 封锁源 IP
武器化 沙箱检测、代码签名 样本分析、行为检测 样本入库、规则更新
投递 邮件过滤、Web 过滤 沙箱检测、URL 分析 隔离邮件、封锁域名
利用 补丁管理、最小化攻击面 EDR、漏洞扫描 隔离主机、补丁推送
安装 应用白名单、权限控制 注册表监控、计划任务审计 清除后门、账号重置
C2 防火墙出站限制 NDR、DNS 监控、JA3 隔离主机、封锁 C2
行动 数据分类、加密、备份 DLP、文件监控、流量分析 隔离、取证、恢复

9.3 响应时限矩阵

阶段 检测窗口 响应时限目标 说明
侦察 较长 30 分钟 攻击者试探,发现相对容易
武器化 中等 15 分钟 准备阶段,检测窗口较长
投递 5 分钟 边界防护重点
利用 极短 1 分钟 终端防护关键
安装 1 分钟 持久化前清除
C2 极短 30 秒 网络检测关键
行动 立即 尽可能减少损失

十、与 ATT&CK 映射

10.1 映射总表

Kill Chain 阶段 ATT&CK 战术 ATT&CK 技术 检测重点
侦察 TA0043 Reconnaissance T1595, T1593, T1597 网络扫描、社交工程
武器化 TA0042 Resource Development T1587, T1588 Exploit 开发、Payload 定制
投递 TA0001 Initial Access T1566, T1190, T1078 钓鱼、漏洞利用、凭据
利用 TA0002 Execution T1059, T1204, T1106 脚本执行、用户交互
安装 TA0003 Persistence T1547, T1053, T1543 注册表、计划任务、服务
C2 TA0010 Command and Control T1071, T1573, T1095 C2 协议、加密隧道
行动 TA0009 Collection T1005, T1039, T1074 数据收集、打包
TA0011 Exfiltration T1041, T1567, T1048 数据外传
TA0040 Impact T1486, T1489, T1490 加密、破坏

10.2 完整攻击链检测覆盖

graph TB KC[Kill Chain] --> AT[ATT&CK] --> DP[检测点] --> RS[响应策略] KC1[侦察] --> AT1[TA0043] --> DP1[流量异常] --> RS1[情报封锁] KC2[武器化] --> AT2[TA0042] --> DP2[样本检测] --> RS2[规则更新] KC3[投递] --> AT3[TA0001] --> DP3[边界告警] --> RS3[隔离阻断] KC4[利用] --> AT4[TA0002] --> DP4[终端告警] --> RS4[进程终止] KC5[安装] --> AT5[TA0003] --> DP5[持久化告警] --> RS5[清除后门] KC6[C2] --> AT6[TA0010] --> DP6[网络告警] --> RS6[主机隔离] KC7[行动] --> AT7[TA0040] --> DP7[数据告警] --> RS7[止损恢复] style KC7 fill:#fce4ec,stroke:#c62828 style RS7 fill:#fce4ec,stroke:#c62828

十一、攻击链重构案例

11.1 SolarWinds 攻击链(2020)

攻击概述: 历史上最复杂的供应链攻击之一,影响 18000+ organizations。

攻击链重构:

Stage 1: 侦察
├── 目标: SolarWinds 开发人员
├── 方法: 密码喷洒、社会工程
└── 发现: VPN 凭据泄露

Stage 2-3: 武器化 + 投递
├── 植入代码: SUNSPOT
├── 篡改: Orion 软件构建过程
└── 投递: 官方更新包 (v2019.4 - v2020.2.1)

Stage 4-5: 利用 + 安装
├── 恶意代码: SUNBURST
├── 持久化: 伪装成合法 Orion 进程
└── 休眠: 延迟 12-14 天激活

Stage 6: C2
├── C2 服务器: avsvmcloud.com
├── 通信: DNS TXT 记录
└── 冒充: 合法 SolarWinds 通信

Stage 7: 行动
├── 横向移动: Azure/AD
├── 数据窃取: 邮件、文档
└── 次级攻击: 针对受害企业

关键检测点:

阶段 检测方法 实际检测情况
C2 DNS 异常查询 FireEye 内部发现
C2 SUNBURST 特征 多个安全厂商发现
横向 Azure AD 异常 微软内部发现
外传 邮件系统异常 部分受害企业发现

11.2 NotPetya 攻击链(2017)

攻击概述: 史上最具破坏性的勒索软件攻击之一,总损失超过 $10B。

攻击链重构:

Stage 1: 初始入侵
├── 入口: M.E.Doc 乌克兰会计软件
└── 方法: 利用漏洞获取初始访问

Stage 2-3: 武器化 + 投递
├── 恶意更新包: 通过 M.E.Doc 自动更新
├── 注入代码: ExPetr/Petya 变种
└── 伪装: 勒索软件,实际是数据销毁

Stage 4-5: 利用 + 安装
├── 本地扩散: WMExec (WMI 执行)
├── 横向移动: PsExec、永恒之蓝
└── 凭据窃取: 内存明文密码

Stage 6-7: C2 + 行动
├── 加密: MBR 覆写 (MBT)
├── 勒索: $300 比特币赎金
└── 破坏: 数据不可恢复

教训:

关键问题:
├── 补丁未及时安装 (永恒之蓝 MS17-010)
├── 域管理员凭据复用
├── 网络分段不足
└── 备份策略不完善

改进措施:
├── 及时打补丁
├── 最小权限原则
├── 网络分段隔离
└── 离线备份

十二、检测规则实战

12.1 完整检测规则集

钓鱼邮件投递检测:

规则名称: Phishing_Attachment_Detection
战术: Delivery (Kill Chain Stage 3)
条件:
  - 邮件附件类型: exe/js/vbs/ps1/cpl
  - 或 邮件包含短链接 < 20 字符
  - 或 发件人域名 ≠ SPF/DKIM 验证
严重级别: High
动作:
  - 隔离邮件
  - 创建事件工单
  - 通知安全团队

恶意执行检测:

规则名称: Suspicious_Process_Execution
战术: Execution (Kill Chain Stage 4)
条件:
  - 父进程: outlook, word, excel, iexplore
  - 子进程: powershell, cmd, wscript
  - 命令行包含: -enc, -encoded, DownloadString
严重级别: Critical
动作:
  - 告警
  - 保存进程链
  - 触发调查

持久化检测:

规则名称: Persistence_Registry_Modification
战术: Installation (Kill Chain Stage 5)
条件:
  - 注册表写入: HKCU\...\Run
  - 进程不是已知的安装程序
  - 写入的值包含 http:// 或 UNC 路径
严重级别: High
动作:
  - 告警
  - 备份注册表
  - 触发响应

C2 检测:

规则名称: C2_Beaconing_Detection
战术: Command and Control (Kill Chain Stage 6)
条件:
  - 同一外部 IP 持续连接 > 10 次
  - 请求间隔标准差 < 5% (固定心跳)
  - 请求大小标准差 < 20%
  - JA3 不在已知白名单
严重级别: Critical
动作:
  - 隔离主机
  - 保存网络流量
  - 触发事件调查

数据外传检测:

规则名称: Data_Exfiltration_Detection
战术: Actions on Objective (Kill Chain Stage 7)
条件:
  - 主机外传流量 > 100MB 在 5 分钟内
  - 目标端口非业务常用端口
  - 数据目的地非已知业务 IP
  - 异常协议: DNS、TFTP、ICMP
严重级别: Critical
动作:
  - 告警
  - 保存流量
  - 阻断连接

十三、防御成熟度评估

13.1 防御能力自评表

Kill Chain 阶段 基础 (1) 发展 (2) 成熟 (3) 优化 (4)
侦察 日志保留 流量监控 威胁情报集成 AI 异常检测
武器化 基础扫描 沙箱部署 动态行为分析 自动化响应
投递 邮件过滤 URL 过滤 沙箱检测 远程浏览器隔离
利用 防病毒 EDR 行为检测 内存保护
安装 日志审计 注册表监控 完整性检测 应用白名单
C2 FW 日志 NDR JA3 指纹 AI C2 检测
行动 备份 DLP 流量监控 威胁狩猎

13.2 成熟度特征

级别 名称 检测时间 响应时间 自动化程度
L1 初始级 > 24 小时 > 1 天
L2 基础级 < 24 小时 < 4 小时 基础
L3 发展级 < 1 小时 < 1 小时 部分
L4 成熟级 < 10 分钟 < 30 分钟 大部分
L5 优化级 < 1 分钟 < 5 分钟 全面

十四、参考链接

资源 链接
Lockheed Martin 官网 https://www.lockheedmartin.com/en-us/capabilities/cyber/cyber-kill-chain.html
原始论文 《Intelligence-Driven Computer Network Defense》
MITRE ATT&CK https://attack.mitre.org/
CISA 网络防御 https://www.cisa.gov/cyber-incident-response
Verizon DBIR https://www.verizon.com/business/resources/reports/dbir/

Last updated: 2026-06-02