首页
社区
课程
招聘
[求助]关于double free和UAF的利用
2015-1-22 12:02 3717

[求助]关于double free和UAF的利用

2015-1-22 12:02
3717
最近研究了一下CVE-2014-1767_Afd.sys_double-free的漏洞分析与利用,参考了Vsbat的文章,链接http://bbs.pediy.com/showthread.php?t=194457,但是小菜能力有限,没能理解到利用的精髓,还有很多疑问,比如说double free和UAF的利用原理是什么?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工 作,每周日13:00-18:00直播授课

收藏
点赞0
打赏
分享
最新回复 (2)
雪    币: 859
活跃值: (304)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
Vsbat 4 2015-1-22 14:08
2
0
我已回复楼主邮件,没看到?
因为MDL对象第一次释放之后,我们用WorkerFactory对象占用了这块内存,这时候一切都是对的
但是因为存在二次释放漏洞,第二次释放时候实际上释放的是WorkerFactory对象。这样WorkerFactory对象就是在系统不知情的情况下被释放了。“系统不知情”说明句柄还有用,可以通过hWrokerFactory句柄操作对象。此时你再调用NtSetInforamtionWorkerFactory就相当于对WrokerFactory对象的use after free。
uaf的利用一般都是占用掉被释放的对象在触发系统调用,让系统流程操作我们伪造的数据。
我们这里也是这么做的,我们在NtSetInforamtionWorkerFactory之前,用NtQueryEaFile布置恶意数据到刚被释放的WorkerFactory对象的内存上。
double free可以转化为uaf的利用,这是我的理解。具体操作就是第一次释放后,用一个新申请的对象快速占用,这样第二次释放实际上就会造成这个新申请的对象的释放,而且“系统不知道”,因此可以进行后续操作,这就是uaf。希望能帮到你。
雪    币: 736
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
纯情小生 2015-1-22 20:55
3
0
确实没看到,我记错了注册邮箱,,太感谢你了,vsbat大大,通过你的解答,我明白了很多,
游客
登录 | 注册 方可回帖
返回