1.1 KiB
title | date | tags | categories | ||||
---|---|---|---|---|---|---|---|
Sécurité logicielle : TD 5 stack overflow et shellcode | 2023-02-10 |
|
|
Partie 1
Avec l'aide de pframe
, nous pouvons voir que lorsque notre boucle itère pour
la onzième fois, l'affectation t[11]
écrase i
et le remet à 0. A ce moment
notre boucle reviens à départ; une boucle infinie se produit alors. C'est la
conséquence du buffer overflow causée par une mauvaise maitrise des boucles et
variables associées.
Partie 2
question 1 et 2
Effectivement le code vu en cours est repris dans cet exemple. Nous sommes cependant en présence de code C avec du code assembleur directement écrit en hexadécimal.
question 4
Lors de l'execution de notre attache en l'observant avec gdb, nous pouvons
clairement les éléments de notre attaque : les éléments de la pile contenant les
adresses vers notre shellcode, les paffing avec des nop
et le shellcode.
On voit aussi apparaitre notre Instruction Pointer dans la pile lorsque notre shellcode est exécuté. Les différents paramètres pour l'appel système se mettent alors en places.