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期)