本文的代码来自来源于《Computer Systems A Programmer's Perspective》(深入理解计算机系统》一书中的bufbomb.c作业题。
实验环境xp+vc6.0。
另:linux2.6+gcc4.x下目前碰到栈保护等措施,暂时还没研究出结果。
问题描述如下:
分析下面程序,可以得知,正常情况下,这个函数会在getbuf中,调入getxs函数读入数字对,然后不管任何情况下,
都会对test函数返回0x1,然后由test中的printf函数打印getbuf的返回值。 现在你的任务,就是,利用缓冲区溢出
的漏洞,输入些特殊的数字,使得屏幕中打印的是0xdeadbeef。
bufbomb.c 源代码: