Heap Spray之前在某一次在分析一个2014年的ie漏洞的时候也学着用过一下,那是一个UAF漏洞
不知这个是什么呢
MS06-055简介
这是IE在解析VML标记语言(矢量标记语言)时存在的基于栈的缓冲区溢出漏洞
那应该是将返回地址覆盖成0x0c0c0c0c了
VML用于绘图,绘制一些简单的图形,给一些关键的坐标应该就可以了
作者给了样例
漏洞分析
引起溢出的是ie核心组件vgx.dll
在这里下断点
断下
调用完Ptok那个函数,_IE5_SHADETYPE_TEXT::Text那个函数的返回地址已经被覆盖了
我们f7跟进看看
这里不断将字符复制到栈上
只要那个字符不为空格,就不断复制到栈上
ida的f5
那就可以覆盖成0x0c0c0c0c就行了
首先进行heap spray
因为javascript申请内存从0x00000000向高地址申请,所以申请200M
所以能覆盖0x0c0c0c0c,若命中的是nop,就能执行shellcode了
之后就触发漏洞就行了
由于我用的是xp sp3,有GS检测
我是用哪个dll替换了本机的dll,顺利完成了调试,
也还好啊