逆向安全系列 Use After Free漏洞分析
发布时间:2022-05-18 09:45:08 所属栏目:安全 来源:互联网
导读:逆向安全系列 Use After Free漏洞分析: 一、前言 想着接下来要写一个use after free的小总结,刚好碰巧最近的湖湘杯2016的一题----game利用use after free可以解出来。对于uaf漏洞,搜了下,uaf漏洞在浏览器中存在很多,有兴趣的同学可以自己去查查。 二、u
逆向安全系列 Use After Free漏洞分析: 一、前言 想着接下来要写一个use after free的小总结,刚好碰巧最近的湖湘杯2016的一题----game利用use after free可以解出来。对于uaf漏洞,搜了下,uaf漏洞在浏览器中存在很多,有兴趣的同学可以自己去查查。 二、uaf原理 uaf漏洞产生的主要原因是释放了一个堆块后,并没有将该指针置为NULL,这样导致该指针处于悬空的状态,同样被释放的内存如果被恶意构造数据,就有可能会被利用。先上一段代码给大家一个直观印象再具体解释。 这段代码在32位系统下执行。通过这段代码可以大概将uaf的利用过程小结为以下过程: 1、申请一段空间,并将其释放,释放后并不将指针置为空,因此这个指针仍然可以使用,把这个指针简称为p1。 2、申请空间p2,由于malloc分配的过程使得p2指向的空间为刚刚释放的p1指针的空间,构造恶意的数据将这段内存空间布局好,即覆盖了p1中的数据。 3、利用p1,一般多有一个函数指针,由于之前已使用p2将p1中的数据给覆盖了,所以此时的数据既是我们可控制的,即可能存在劫持函数流的情况。 (编辑:江门站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐