首页
社区
课程
招聘
[原创] Flash 0day(CVE-2018-4878)分析记录
发表于: 2018-2-6 15:43 10863

[原创] Flash 0day(CVE-2018-4878)分析记录

2018-2-6 15:43
10863

最近报出的flash 0day,自己闲暇之余,看看究竟。拿到sample以后,上FFDEC,看看decompiled code,简单看一下,发现又是TVSDK,看来后面TVSDK还是会有不少洞的。

先从code层面整理逻辑,class_2可以看做入口函数,通过DRMManager初始化DRM object,来触发漏洞(后面的调试,可以看出这是一个UAF)。
通过计时器来检查DRM object的a1是不是被修改了,如果已经被修改,则去做利用的部分,思路是ByteArray占位,以及修改ByteArray的Length,获取全地址访问的权限。

在触发漏洞之前,DRM object的内存布局

漏洞触发的时候,可以发现相应的a1已经被设置为0,继续跟进call stack,可以发现前几个function大致是这样的:delete script_object --> script_object destructor --> memset

占位以后,ByteArray object的内存布局以及对应的size,可以看到正好是512字节(0x200)

修改Lengh以后,对应的内存布局,如下:

相应修改Length的汇编指令以及action script位置,正好可以对应decompiled code中的class_2/flash25

后面就是常用的绕过手法,利用获取的全地址读写来leak flash module基址,然后是kernel32的地址,然后,是VirutualProtect和CreateProcess。shellcode的触发是利用修改Method对象的虚表函数(apply和call),一个用于修改shellcode的保护属性,一个是用于触发shellcode执行。

备注:时间仓促,不免会有遗漏和错误之处,如有不足,请多指教。

原文出处:
https://github.com/michaelpdu/michaelpdu.github.io/blob/master/md/CVE-2018-4878.md

 

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 1
支持
分享
最新回复 (9)
雪    币: 995
活跃值: (269)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
make
2018-2-7 00:28
0
雪    币: 1491
活跃值: (985)
能力值: (RANK:860 )
在线值:
发帖
回帖
粉丝
3
样本已经拿到了?
楼主发论坛共享一下!
2018-2-8 12:59
0
雪    币: 1491
活跃值: (985)
能力值: (RANK:860 )
在线值:
发帖
回帖
粉丝
4

从github上找到了这个样本
CVE-2018-4878-Adobe-Flash-DRM-UAF-0day

上传的附件:
2018-2-8 13:14
0
雪    币: 59
活跃值: (94)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
5
VT上有,可以自己下:1a3269253784f76e3480e4b3de312dfee878f99045ccfd2231acb5ba57d8ed0d
2018-2-8 13:34
0
雪    币: 300
活跃值: (2447)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
mark
2018-2-8 14:01
0
雪    币: 6818
活跃值: (153)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
2018-2-8 22:35
0
雪    币: 9
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
感谢大神
2018-2-9 16:09
0
雪    币: 5
活跃值: (31)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
drm_obj_2  =  new  DRMClass()  如何快速知道在哪个偏移下段  感谢
2018-6-21 17:45
0
雪    币: 62
活跃值: (293)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
有谁知道com.adobe.tvsdk.mediacore*   这个包是从哪里获取的吗?  我通过CS6、flashbuilder 软件安装调试时,都提示没有这个包,哪位大佬可以帮忙解答下?
2019-11-28 15:52
0
游客
登录 | 注册 方可回帖
返回
//