Estoy intentando crear un desbordamiento de búfer con C# para un proyecto escolar:C# creación de desbordamiento de búfer
unsafe
{
fixed (char* ptr_str = new char[6] {'H', 'a', 'l', 'l', 'o', ','})
{
fixed (char* ptr_str2 = new char[6] {'W', 'e', 'r', 'e', 'l', 'd'})
{
fixed (char* ptr_str3 = new char[6] {'!', '!', '!', '!', '!', '!'})
{
for (int i = 0; i < 8; i++)
{
ptr_str2[i] = 'a';
}
for (int i = 0; i < 6; i++)
{
this.Label2.Text += ptr_str[i];
this.Label3.Text += ptr_str2[i];
this.Label4.Text += ptr_str3[i];
}
}
}
}
}
pensé que esto sería inundar ptr_str2
caracteres y de este modo sobreescritura en ptr_str
. Sin embargo, eso no parece suceder. Se ejecuta pero los valores en ptr_str
no se sobrescriben.
¿Alguien puede ayudar a lograr esto? No entiendo lo que estoy haciendo mal.
Supongo que podría comenzar con el proyecto ASP .NET MVC 2 ... –
Estamos tratando de evitarlos, está tratando de hacer uno ... Extraño mundo en el que vivimos. – alex
Esto sería un * buffer overflow *, no un desbordamiento de la pila. –