grim7reaper

Un artisan du code

Crackme — strings

Le crackme étudié dans cet article provient d’ici.

Ce premier crackme va nous permettre de voir la première chose à faire en rétroingénierie.: lorsque l’on cherche une information textuelle dans un binaire, il faut commencer par lancer un coup de strings.
Ici, on obtient.:

% strings ch1.bin
/lib/ld-linux.so.2
__gmon_start__
libc.so.6
_IO_stdin_used
puts
realloc
getchar
__errno_location
malloc
stderr
fprintf
strcmp
strerror
__libc_start_main
GLIBC_2.0
PTRh@
[^_]
%s : "%s"
Allocating memory
Reallocating memory
123456789
############################################################
##        Bienvennue dans ce challenge de cracking        ##
############################################################
Veuillez entrer le mot de passe : 
Bien joue, vous pouvez valider l’epreuve avec le pass : %s!
Dommage, essaye encore une fois.

La chaîne 123456789 ressemble étrangement à un mot de passe.
Essayons.:

% ./ch1.bin
############################################################
##        Bienvennue dans ce challenge de cracking        ##
############################################################

Veuillez entrer le mot de passe : 123456789
Bien joue, vous pouvez valider l’epreuve avec le pass : 123456789!

Gagné !
Celui-ci était vraiment simple, le mot de passe était stocké en clair dans le binaire. Les prochains ne seront pas aussi évident ;-)