Partie 25 - đ Challenge - exploitation avancĂ©e par ROP (6/6)
đ Challenge : exploitation avancĂ©e par ROP (6/6)
En parcourant ce fameux « rĂ©seau social professionnel », nous sommes tombĂ©s sur un programme dĂ©veloppĂ© par ce que lâon appelle un « vibe codeur ». Il affirme que son outil de cryptage de donnĂ©es (sic) est dâune robustesse Ă toute Ă©preuve.
Et si on lui démontrait le contraire ?
- đŻ Objectif : rĂ©ussir Ă afficher le contenu de
flag.txt.
â€”ïž TĂ©lĂ©chargement du challenge
Lâarchive du challenge est disponible ici :
- âŹïž TĂ©lĂ©chargement : pwn-rop-chall.zip
- đ SHA256 & Analyse Virus Total : d02c1d2522d0189880e26eafc40a09279316e4671b068b6e5b4c296a78edef79
Si vous avez des difficultĂ©s Ă mettre en place le challenge, nâhĂ©sitez pas Ă jeter un Ćil Ă la page annexe concernant la rĂ©solution des challenges.
đ» Contexte dâexĂ©cution
Le contexte dâexĂ©cution est le suivant :
- activer lâASLR ;
- atteindre lâobjectif en dehors dâun dĂ©bogueur ;
- atteindre lâobjectif Ă distance via le port
12345; - la version de la glibc utilisĂ©e nâest pas importante.
đ« Lancer le challenge
Ci-dessous les commandes permettant de lancer le challenge :
- construction du conteneur :
docker build -t pwn-rop-chall .; - lancement du conteneur et du challenge :
1
2
3
4
5
6
docker run --rm \
-p 12345:12345 \
-p 1234:1234 \
--cap-add=SYS_PTRACE \
--security-opt seccomp=unconfined \
pwn-rop-chall
Les ports accessibles sont les suivants :
12345: port du programme Ă exploiter Ă distance ;1234: port quâil est possible dâutiliser pour dĂ©boguer Ă distance avecgdbserver.
đ€ Quelques conseils
- Le challenge peut ĂȘtre rĂ©solu en suivant plusieurs Ă©tapes petit Ă petit ;
- la rĂ©solution peut paraĂźtre longue mais chaque Ă©tape intermĂ©diaire nâest pas trĂšs compliquĂ©e ;
- ne négligez pas la phase de recherche de vulnérabilités ;
- ne croyez pas tout ce que vous voyez đ€ ;
- ce nâest pas un challenge destinĂ© Ă exploiter le tas.
đĄ Indices
Si vous avez Ă©tĂ© attentifs lors de ce cours jusquâĂ prĂ©sent, vous devriez disposer de tout le bagage thĂ©orique pour parvenir Ă exploiter le programme đ. DĂ©sormais, âil nây a plus quâĂ â.