如何实现Empire的跨平台Office宏攻击
David Fletcher //
在渗透测试过程中,我们常遇到同时使用Microsoft Windows和Apple OSX操作系统的混合环境。传统钓鱼攻击难以区分用户系统类型,导致错误载荷投递失效。本文介绍通过智能宏代码自动识别操作系统,并动态选择执行PowerShell(Windows)或Python(OSX)载荷的技术方案。
技术实现核心
1. 载荷生成配置
- 使用PowerShell Empire 2.0生成双平台宏载荷
- 建议修改默认通信配置:添加抖动参数、使用有效TLS证书、变更请求特征
- 配置名为"xplatform_macro"的监听器
2. 宏代码构建流程
|
|
3. 函数重构要点
- 将原始宏代码重构为DebugMac和DebugWin函数
- Windows宏需显式声明变量:
Dim strComputer As String - 每个函数必须以
End Function结尾
执行效果验证
成功测试显示:同一恶意文档在Windows系统执行PowerShell载荷,在OSX系统执行Python载荷,双双回连Empire监听器。
技术限制说明
- 仅支持新版本宏启用文档(旧版Office for Mac不支持宏)
- Office 2016 for Mac无法调用Python所需的C库函数
技术实现细节完整呈现,助力安全研究人员应对混合系统环境渗透挑战。
原文载于Black Hills Information Security,涉及实际攻防技术细节,请仅在合法授权测试中使用。