利用 MS17-010 EternalBlue 漏洞
概述
MS17-010(EternalBlue)是微软 SMBv1 实现中的一个严重漏洞,允许远程代码执行(RCE)。最初由 NSA 发现,2017 年被 Shadow Brokers 泄露,被用于 WannaCry 和 NotPetya 勒索软件攻击活动。尽管自 2017 年 3 月起已有补丁,但许多组织仍有未打补丁的系统,使其成为特别在传统环境中可行的红队利用向量。
MITRE ATT&CK 映射
- T1210 - 远程服务利用
- T1190 - 利用面向公众的应用
- T1569.002 - 系统服务:服务执行
实施步骤
阶段一:漏洞扫描
- 扫描目标网络的 SMB 端口 445
- 检查 SMBv1 协议支持
- 运行 MS17-010 漏洞检查(Nmap NSE 脚本或 Metasploit 辅助模块)
- 记录具有操作系统版本和补丁级别的易受攻击系统
阶段二:利用漏洞
- 根据目标操作系统选择适当的漏洞利用变体
- 配置利用载荷(Meterpreter、Cobalt Strike beacon、自定义 shellcode)
- 对已确认的易受攻击目标执行利用
- 验证代码执行并建立会话
阶段三:后渗透
- 在被控系统上建立持久化
- 从内存中转储凭据
- 将被控主机作为枢纽点
- 记录利用证据
工具与资源
| 工具 | 用途 |
|---|---|
| Nmap ms-17-010 NSE 脚本 | 漏洞检测 |
| Metasploit ms17_010_eternalblue | 利用模块 |
| Metasploit ms17_010_psexec | 替代利用方法 |
| AutoBlue-MS17-010 | 独立 Python 利用工具 |
| CrackMapExec | 批量 SMB 漏洞扫描 |
检测指标
- 针对 EternalBlue 利用流量的 IDS/IPS 特征
- 来自异常源主机的 SMBv1 协商
- 事件 ID 7045:利用后安装新服务
- SMB 上的异常命名管道活动
- 具有缓冲区溢出特征的大型 SMB 写入请求
验证标准
- 通过扫描识别了易受攻击的系统
- 在授权目标上实现了漏洞利用
- 通过已建立的会话确认了代码执行
- 已记录后渗透活动
- 已提供修复建议