Salut, je fais un CTF et je dois jump à un fonction qui est à l’adresse mémoire 0x80485e6
le code est le suivant:
void vuln(){
char buf[64];
gets(buf);
printf("Woah, were jumping to 0x%x !\n", get_return_address());
}
Get return adress affiche juste EIP. Dans ma tête il y a 64 bytes dans le buffer, aucun variable local (sauf le buffer) donc comme la stack est comme ceci :les variables local, ebp sauvgardé et eip, il suffit de faire 64 + 4 (4 étant la taille de ebp sauvgardé) pour commencer à écrire sur EIP, mais j’ai du écrire 76 byte avant de commencer à écrire sur EIP.
Pourquoi ?
+0
-0