利用PowerPoint进行钓鱼攻击:自动运行宏的技术解析

本文详细介绍了如何利用PowerPoint的宏功能实现自动运行恶意代码,无需用户额外点击即可触发,适用于红队测试和渗透测试场景,并提供了具体操作步骤和代码示例。

利用PowerPoint进行钓鱼攻击

作者:Carrie Roberts & Chevy Swanson
注意: 本文提到的技术和工具可能已过时,不适用于当前环境,但仍可作为学习参考,并可能集成到现代工具和技术中。

如何确保人们打开恶意文件并执行?我们只需利用微软多年来建立的用户信任,然后在PowerPoint中嵌入危险宏,用户甚至会面带微笑地打开它。

另一篇博文详细介绍了宏本身以及如何规避防病毒软件。本文则添加了一个技巧,使宏在文件打开时立即运行,无需用户额外操作(如点击或鼠标悬停事件)。这一技巧专门针对PowerPoint,因为它不像Microsoft Word和Excel那样提供Auto_Open或Workbook_Open选项。

本文将介绍如何通过屏幕顶部的警告横幅,在用户启用宏后立即运行您的宏。

第一步:启用开发人员选项卡

首先,打开PowerPoint演示文稿,如果尚未添加“开发人员”选项卡,请先添加它。

第二步:添加宏

在开发人员选项卡中,点击最左侧的“Visual Basic”按钮,打开新窗口。然后,转到“插入”>“模块”,在此处添加宏。例如,我们将打开一个消息框。

或者,您可以直接复制以下文本:

1
2
3
Sub Run_On_Open()
    MsgBox "Run_On_Open just ran"
End Sub

当然,如果这是实际的恶意尝试,您会在此处放置规避防病毒的负载,如Sally的博文所示。

将PowerPoint保存为.pptm文件并暂时关闭。

第三步:修改文件结构

接下来,有快速方法和稍慢的方法。快速方法是使用名为CustomUI Editor的程序,但出于安全考虑,我们不推荐使用随机.msi文件,因此我们将采用更手动的选项。

首先,将PowerPoint文件解压缩到其自己的目录中。然后,编辑_rels/.rels文件,在最后一个之前添加以下行:

1
2
<Relationship Type="http://schemas.microsoft.com/office/2006/relationships/ui/extensibility"
Target="/customUI/customUI.xml" Id="Rd6e72c29d34a427e" />

接下来,在与_rels目录相同的级别创建一个新目录。在此新目录中创建名为customUI.xml的文件,并添加以下文本:

1
2
3
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"
onLoad="Run_On_Open" >
</customUI>

第四步:重新压缩文件

将文件重新压缩。如果您在Mac上,请确保排除.DS_store文件。

1
zip -r newRunOnOpen.pptm . -x "*.DS_Store"

确保使用.pptm扩展名命名,因为PowerPoint必须能够加载我们创建的自定义功能区。现在,您的宏应在打开PowerPoint时运行(一旦启用宏)。

进一步学习

您可以从Carrie的课程中了解更多!查看以下内容:

  • 攻击模拟工具:Atomic Red Team、CALDERA等
  • 用于信息安全的PowerShell 提供实时/虚拟和点播选项!
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计