【钓鱼从入门到放弃】-Docx远程模版加载宏代码

0x01 前言

此方法利用创建一个DOCX文档,并使用远程加载DOTM模板文件去执行恶意宏命令。

0x02 利用

制作恶意远程宏模版

Attacks→Packages→MS Office Macro

https://images.atsud0.me/images/post/20220126-16:07:34-_22dOyE_MsoTS6_22dOyE_1643184454324_22dOyE_MsoTS6.png

复制获取到的VB代码后打开word 勾选开发工具选项

https://images.atsud0.me/images/post/20220126-16:11:18-_cAt8Cc_4qaS3H_cAt8Cc_1643184678585_cAt8Cc_4qaS3H.png

开启开发工具后,将该文档另存为 dotm 宏模版文件。打开 开发工具→Visual basic复制恶意代码到ThisDocument (这里用的演示代码是弹计算器。)

https://images.atsud0.me/images/post/20220126-16:33:39-_pWXqMl_1AB0N5_pWXqMl_1643186019732_pWXqMl_1AB0N5.png

在恶意模版文件上,新建文件后启用宏。正常运行。

制作远程加载恶意宏模版的docx文件

将刚刚制作好的恶意模版文件部署到服务器后,新建word文件随便选择一个模版使用保存文件。另存为后,修改为zip后缀,进行解压。

https://images.atsud0.me/images/post/20220126-16:45:15-_AiTMmn_yPjBJe_AiTMmn_1643186715970_AiTMmn_yPjBJe.png

路径 word_rels,找到settings.xml.rels文件,修改Target属性。

https://images.atsud0.me/images/post/20220126-16:48:09-_MDaf4Q_OlVJah_MDaf4Q_1643186889126_MDaf4Q_OlVJah.png

修改好后,用zip重新压缩回去,并重新命名后缀为docx。

https://images.atsud0.me/images/post/20220126-16:50:28-_rgA2K5_jFMt9t_rgA2K5_1643187028601_rgA2K5_jFMt9t.png

启用宏即可正常运行。

0x03 总结

步骤

docx远程加载宏的利用步骤简述如下

  1. 制作包含宏的恶意模版文件(.dotm)。
  2. 将恶意模版文件上传至服务器。如Github等公共文件平台。
  3. 新建并保存一个使用任意模版的docx文件。
  4. 解压docx文件,修改 word\_rels\settings.xml.rels文件的Target属性,将其指向部署恶意模版文件的服务器。
  5. 使用zip格式压缩文件,并重新命名后缀为docx。
  6. 重新打开docx文件,并启用宏。

docx文件无法执行宏代码,发送docx文件可使对方放松警惕。加上使用公共平台去托管恶意文件减少暴露服务器的几率。

0x04 参考链接