Yohan Simard 83ace6d5af Attaque blind ROP | 2 years ago | |
---|---|---|
.. | ||
README.md | 2 years ago | |
attaque.py | 2 years ago | |
echo.c | 2 years ago |
gcc echo.c -o echo
pip install pwn
socat -v tcp-l:31337,fork exec:'./echo'
python3 attaque.py
On peut ajouter DEBUG
en paramètre pour voir les données envoyées
et reçues.
On peut exécuter la fonction C brop()
en écrasant l’adresse
de retour par son adresse. Pour cela, on récupère d’abord le canary,
puis la véritable adresse de retour. On peut ensuite écraser le
canary et rbp par leur valeur, puis l’addresse de retour par sa
valeur + un offset, et ce jusqu’à trouver brop()
.
On voit qu’on arrive à exécuter des instructions qui appartiennent
à brop()
, car on voit le print “brop”.