数码资源网·下载

展开

Adobe Flash 0day漏洞补丁

大小:0B语言:0B 类别:系统安全系统:Winall
简介|文章|评论
版本:(国家级网络攻击) 免费版 for Winall时间:2018-12-06
软件介绍

近期有人使用了最新的Flash 0day漏洞cve-2018-15982和带有自毁功能的专属木马程序进行攻击,Adobe官方及时响应进行了修复更新。Adobe Flash 0day漏洞补丁能够快速安全的修复此次国家级网络攻击,极大程度的保护了用户的安全。Adobe Flash 0day漏洞补丁安全可靠,如果你在使用Adobe Flash,那就快来进行Adobe Flash 0day漏洞修复吧!

Adobe Flash 0day漏洞补丁图片

Adobe Flash 0day漏洞分析

通过分析我们发现此次的CVE-2018-15982 0day漏洞是flash包com.adobe.tvsdk.mediacore.metadata中的一个UAF漏洞。Metadata类的setObject在将String类型(属于RCObject)的对象保存到Metadata类对象的keySet成员时,没有使用DRCWB(Deferred Reference Counted, with Write Barrier)。攻击者利用这一点,通过强制GC获得一个垂悬指针,在此基础上通过多次UAF进行多次类型混淆,随后借助两个自定义类的交互操作实现任意地址读写,在此基础上泄露ByteArray的虚表指针,从而绕过ASLR,最后借助HackingTeam泄露代码中的方式绕过DEP/CFG,执行shellcode。

Adobe Flash 0day漏洞补丁截图

Adobe Flash 0day漏洞成因分析

在漏洞的触发过程,flash中Metadata的实例化对象地址

循环调用Metadata的setObject方法后,Metadata对象的keySet成员

keySet成员的部分值

强制垃圾回收后keySet成员被释放的内存部分

在new Class5重用内存后,将导致类型混淆

后续攻击者还通过判断String对象的length属性是否为24来确定漏洞利用是否成功。(如果利用成功会造成类型混淆,此时通过获取String对象的length属性实际为获取Class5的第一个成员变量的值24)。

通过进一步反编译深入分析,我们可以发现Metadata类的setObject对应的Native函数,实际功能存在于setObject_impl里。

在Object_impl里,会直接将传入的键(String对象)保存到Metadata的keySet成员里。

Buffer结构体定义如下(keySet成员的结构体有一定差异)。

add_keySet中保存传入的键(String对象)

这个时候垃圾回收机制认为传入的键未被引用,从而回收相应内存,然而Metadata对象的keySet成员中仍保留着被回收的内存的指针,后续通过new Class5来重用被回收的内存,造成UAF漏洞。

Adobe Flash 0day漏洞补丁

加载全部内容

相关应用
热门推荐
相关教程
猜你喜欢
fireball火球病毒专杀补丁下载

fireball火球病毒专杀补丁下载

Fireball火球病毒是一种感染电脑的病毒,firebal...
进入专区>>
相关合集
本类排行