recherche de vulnérabilités / 5. la pile

La pile x86 pendant un appel de fonction

Convention cdecl, 32 bits. On suit foo(5, 6) appelée depuis main, puis le printf qui suit. Boutons ou flèches du clavier.

int foo(int a, int b) { int c; c = a + b; return c; }
int main() { foo(5, 6); printf("bye\n"); return 0; }
Pile lors de l'appel de foo Code assembleur à gauche, pile à droite avec les pointeurs ESP et EBP. adresses basses (sommet de pile) adresses hautes ESP EBP

argumentssauvegardes (retour, EBP)variable localedonnée morte (hors pile)

À retenir

← 4. Le format ELFSommaire