实验环境
| 推荐使用的环境 | 备注 | |
|---|---|---|
| 操作系统 | Windows 7 SP1 | |
| 虚拟机 | Vmware | |
| 调试器 | Windbg | |
| 反汇编器 | IDA Pro | |
| 漏洞软件 | IE |
静态分析
使用peepdf工具解析样本pdf。OpenAction是打开PDF文件后执行的动作,此处引用对象1。

查看对象1引用了对象2。

查看对象2引用了对象3。

对象3是一段加密的js。

删除开头和结尾解密。

查看shellcode,js_analyse会提示你缺少pyv8,你需要python2版本的pyv8,

安装如下


shellcode主要是触发CVE-2013-5065Windows内核提权绕过Adboe沙盒。
查看poc,去掉heap spray等漏洞利用代码,很容易发现触发漏洞的关键代码是如下一段。

它主要执行以下动作:
- 创建父ToolButtion对象,设置回调函数addButtionFunc
- addButtionFunc中创建子Buttion对象,并设置回调函数removeButtonFunc
- removeButtionFunc中删除父ToolButtion对象。
由于父Button对象已被释放,但子Button对象依然保留着对父Button对象的引用,所以导致了UAF。
漏洞利用
首先确定ToolButton所占内存

然后覆盖虚表指针并堆喷射。

文章评论