Shop
Catégorie: Pwn Difficulté: - Flag: CTFREI{1nt3g3r_0v3rfl0w}
Challenge
Description
Deuxième challenge d'introduction au pwn.
Je t'ai donné accès à ma boutique, mais laisse tomber, tu n'auras jamais assez pour acheter mon flag !
Aide: Code source
Connexion: nc intro.ctfrei.fr 7001
Ce challenge tourne sur un docker et n'est pas disponible
Solution
Lorsque l'on veut faire un retrait à la banque, on peut retirer une valeur négative qui sera ensuite cast en unsigned int. Autrement dit, si l'on demande de retirer -1$, alors la banque va considérer que c'est bien inférieur à son solde et donc accepter de nous les donner. Le cast suivant va transformer cette valeur négative en entier non signé et ainsi, on aura argent illimité !
En python ça donne :
Mis à jour