安全客
通过前三篇文章的学习,我们了解了堆利用的基本概念和技术。本篇文章,我们将要了解堆利用中的House技术以及与off by one结合后的利用手法。
这里是How2Heap学习的第三部分,Unsafe_Unlink。
文本暂时不讨论堆利用本身,会分别讨论两个浏览器漏洞,利用漏洞实现了OOB之后,如何在开启ASLR的情况下完成地址泄漏,帮助读者完成Exploit的最后一公里。
网络上编写shellcode的教程大多是关于Linux的,加之顺带学习PE文件结构,所以打算写一篇关于Windows 下shellcode的编写,为要编写Shellcdoe的读者提供一些参考。
这次将介绍如何利用malloc中的consolidate机制来实现double free。本文会涉及一些源代码,如有解释错误,恳请各位大神指正。
对Linux下堆利用的学习记录,学习顺序大体是按照shellphish团队的how2heap的流程,尽量每个方面都调试的详尽一些,并结合案例进行分析。
该漏洞是的原理是,IE下的mshtml动态连接库将TreeNode对象从Dom树释放后,又重新调用对象的任意代码执行。该漏洞覆盖的IE版本从IE6到IE11,是一个典型的浏览器UAF漏洞,最后使用精准堆喷射完成利用。
UAF漏洞全称为use after free,即释放后重用。漏洞产生的原因,在于内存在被释放后,但是指向指针并没有被删除,又被程序调用。比较常见的类型是C++对象,利用UAF修改C++的虚函数表导致的任意代码执行。
HeapSpray这个技术是IE漏洞利用中非常重要的一点,能够绕过很多利用一般技术很难绕过的保护机制(DEP/ASLR),虽然这并不是一种漏洞利用手法,但是这种手法确实值得我们去研究和掌握。
本文将从最基础的SEH覆盖,到SafeSEH保护机制的绕过,再到最后绕过SafeSEH结合DEP等保护机制,对SEH的利用进行由浅入深的的研究。
加载更多
勋章成就
稿费总计 3170
发表文章 13
参与讨论 59
关注
4
粉丝
9