Qualcuno di voi ha dovuto affrontare il seguente problema quando si tenta di sovrascrivere il puntatore $esp
?Smashing Stack su Ubuntu 11.10
Certo, provare una dimensione del buffer legit funziona sempre! Ma, quando si tenta di aumentare la dimensione del buffer per sovrascrivere il $esp
e si riesce a toccare con successo il primo byte, secondo byte o terzo byte di $esp
funziona perfettamente. Ma, non appena si tenta di sovrascrivere tutti i 4 byte dello $esp
, cambia completamente il suo contenuto e l'indirizzo. Non mostra più 41
s come ho usato "A" per riempire il buffer. Ho allegato uno screenshot che forse spiegherà in maggior dettaglio. Ringrazia tutti.
#include <stdio.h>
#include <string.h>
int main(int argc, char** argv)
{
char buffer[500];
strcpy(buffer, argv[1]);
return 0;
}