黑客使用Polyglot图像隐藏恶意广告活动

栏目: 编程工具 · 发布时间: 5年前

内容简介:DEVON安全研究人员追踪到恶意广告攻击活动越来越使用复杂的攻击方式来隐藏payload。DEVCON安全研究人员发现至少一个攻击组织通过polyglot漏洞利用来分发恶意广告payload。Polyglot图像和Steganographic图像(隐写)的定义很容易混淆,但这两个攻击之间有明显的区别。隐写漏洞利用使用的是隐藏在图像中的修改像素值。通过修改像素值,人眼无法检测到图像质量的明显变化。但是漏洞利用也需要一些额外的脚本来了解模式和offset来找出漏洞利用的像素,然后将这些聚合在可执行JS文件中。P

DEVON安全研究人员追踪到恶意广告攻击活动越来越使用复杂的攻击方式来隐藏payload。DEVCON安全研究人员发现至少一个攻击组织通过polyglot漏洞利用来分发恶意广告payload。Polyglot图像和Steganographic图像(隐写)的定义很容易混淆,但这两个攻击之间有明显的区别。

隐写漏洞利用使用的是隐藏在图像中的修改像素值。通过修改像素值,人眼无法检测到图像质量的明显变化。但是漏洞利用也需要一些额外的脚本来了解模式和offset来找出漏洞利用的像素,然后将这些聚合在可执行JS文件中。

Polyglot漏洞利用的特点是文件可以同时在图像和JS文件中。不需要外部脚本就可以提取payload。但是文件怎么样同时是图像文件又是JS文件呢?原理就在于计算机识别这两个文件类型的方式。

下面是计算机读取正常BMP文件的情况。需要知道的是攻击者如何将它转换成polyglot,并利用浏览器。

黑客使用Polyglot图像隐藏恶意广告活动 正常BMP图像头部

前两个字节(红色框)是BMP图像的BM的十六进制表示。接下来的4个字节(8A C0 A8 00)表示图像文件的大小。然后是4个null字节(00 00 00 00),数据偏移量是(8A 00 00 00)。这些字节就给出了计算机正确执行文件需要的主要信息。

下面是Polyglot BMP图像文件的header:

黑客使用Polyglot图像隐藏恶意广告活动

看起来很像。也是以BM开始的,大小和数据偏移offset也有。攻击者就是利用修改和控制图像的大小和十六进制字符来使计算机将该文件识别为其他文件的。攻击者修改了图像的大小字段就变成了/**(字符代码)。这些字符加起来就是一个JS的注释。JS备注是用来使JS翻译器忽略这些字符串,比如忽略/*到*/之间的字符串。

下面看一下文件的尾部。

黑客使用Polyglot图像隐藏恶意广告活动

JS注释是以*/结尾的,攻击者然后加入了字符串=和`。攻击者就将文件类型BM转成JS变量,并设置为另一个高度混淆的payload。下面解释了JS翻译器的原理:

该文件在浏览器中有两种方式运行:

·黑客使用Polyglot图像隐藏恶意广告活动 会显示给用户一个图片,而会忽略JS脚本。

·  会执行有效的JS,而忽略图像数据。

研究人员已经检测到隐藏在恶意广告payload中的漏洞利用。攻击者有一些有创意的图片:

黑客使用Polyglot图像隐藏恶意广告活动

研究人员发现攻击以正常BMP文件的方式加载,而在浏览器中是以JS的方式加载BM变量到内存中,如下图所示:

黑客使用Polyglot图像隐藏恶意广告活动

图像文件的后面部分含有一个解码脚本,该脚本实际上是一个高度混淆的JS。攻击是分层的,而且使用了一些技术来隐藏恶意活动,并且阻碍逆向工程师找出其真正的工作原理。

黑客使用Polyglot图像隐藏恶意广告活动

上面的脚本都是用下面的这个简单那叫吧来解码的。这会解码会隐藏在BM变量中的数据:

下面是解码的BM数据。最后解码的脚本并不像我们常见的恶意广告活动中的漏洞利用。它在浏览器中引入了一个cloudfront的url,会将受害者重定向到其他加载SPIN THE WHELL类游戏的页面。

黑客使用Polyglot图像隐藏恶意广告活动

最后重定向的结果:

黑客使用Polyglot图像隐藏恶意广告活动

但是这种新的攻击方法其实并不新颖。安全研究人员和渗透测试人员也常使用这种技术来执行 shell 代码和发起服务器攻击。JS/GIF polyglots是一种围绕服务器安全策略而执行XSS攻击的方法。类似的攻击方法已经出现不止一次了。研究人员详细更多的高级攻击组织将会进入恶意广告欺诈攻击活动中。

参考文献:

https://warroom.rsmus.com/bmp-x86-polyglot/

https://en.wikipedia.org/wiki/Gifar

http://stegosploit.info/

https://www.robertxiao.ca/hacking/defcon2018-assembly-polyglot/

https://hackaday.com/2015/11/06/stegosploit-owned-by-a-jpg/

https://ajinabraham.com/blog/bypassing-content-security-policy-with-a-jsgif-polyglot

https://portswigger.net/blog/bypassing-csp-using-polyglot-jpegs

https://www.alchemistowl.org/pocorgtfo/pocorgtfo08.pdf


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

软件的奥秘

软件的奥秘

[美] V. Anton Spraul / 解福祥 / 人们邮电出版社 / 2017-9-1 / 49

软件已经成为人们日常生活与工作中常见的辅助工具,但是对于软件的工作原理,很多人却不是非常了解。 本书对软件的工作原理进行了解析,让读者对常用软件的工作原理有一个大致的了解。内容涉及数据如何加密、密码如何使用和保护、如何创建计算机图像、如何压缩和存储视频、如何搜索数据、程序如何解决同样的问题而不会引发冲突以及如何找出最佳路径等方面。 本书适合从事软件开发工作的专业技术人员,以及对软件工作......一起来看看 《软件的奥秘》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具