Windows平台下的堆溢出利用技术.doc

Windows平台下的堆溢出利用技术.doc

Windows平台下的堆溢出利用技术 作者:mr_me 译者:riusksk(泉哥:) 前言 在栈溢出中我们一般都是通过控制指令指针EIP,或者覆盖SEH来实现溢出利用的,而在本文即将讲到及测试所使用的利用技术中,并没有直接运用到覆盖EIP或者SEH。我们将通过覆盖一可控制的内存地址,进而实现任意的DWORD覆写。如果你对栈溢出的认识还没有达到中/高等水平,那么我建议你先集中精力去学习一下。本文所讲述的利用技术均是些年过已久的旧技术,如果你有什么新的利用技术,记得分享一下。阅读本文前你需要具备以下条件: Windows XP SP1; 调试器(Olly Debugger, Immunity Debugger, windbg等等); C/C++ 编译器(Dev C++, lcc-32, MS visual C++ 6.0); 脚本语言执行环境(本文使用python,你也可以使用perl); 大脑; 具备汇编和C语言知识,并懂得如何用调试器去调试它们; Olly Debugger插件HideDbg,或者Immunity Debugger的!hidedebug命令插件; 时间。 我们在本文主要注重于基础知识,这些技术可能因有些过时而未在“现实世界”中使用,但有一点你必须记住,如果你想提高技术,就必须知晓过去,并取其所长来为己所用! 堆的定义及其在XP下的工作原理 堆是进程用于存储

文档评论(0)

1亿VIP精品文档

相关文档