Cracking, Programmation

mercredi 8 mai 2019, 14:28  #1
Cracking, Ret2Libc différence d’adressage
roumy
  • 2 posts

Bonjour à tous .
D’abord merci pour ce super site, j’y apprends plein de trucs ;p.

J’ai une question vis à vis d’un point technique sur un chall de cracking que j’ai résolu.

J’ai voulu réaliser une attaque ret2libc.
J’ai d’abord suivi la procédure telle que de décrit sur se site :
http://thinkloveshare.blogspot.com/2018/05/retour-case-libc-piochez-un-shell.html

Pour récupérer l’adresse de system, l’auteur utilise ldd pour obtenir l’adresse de base de la libc ; j’obtiens l’adresse 0xb7e45000
puis readelf -a /lib/i386-linux-gnu/libc.so.6 | grep system
00040310 56 FUNC WEAK DEFAULT 12 system@@GLIBC_2.0

j’en conclue donc que l’adresse "system" doit se situer à 0xb7e45000+0x00040310=*0xb7e85310*

hors mon attaque ne fonctionne pas , j’ai donc utiliser la technique plus "simple" , à savoir gdb peda puis
p system qui m’a renvoyé 0xb7e63310 et là mon attaque a fonctionné correctement.

Bien que j’ai résolu le chall, je me pose toujours la question pourquoi est ce que j’ai un écart de 0x00022000 entre les 2 solutions ?
Surtout que la 1ere est censé être la plus générique et donc portable (pas toujours de peda installé sur des machines !)

Si l’un de vous a une idée je suis preneur
Merci

samedi 6 juillet 2019, 13:58  #2
Cracking, Ret2Libc différence d’adressage
Anonyme

Thanks for sharing this information with us