systemadmin.es > Seguridad > Wargame leviathan: nivel 4

Wargame leviathan: nivel 4

En este nivel volvemos a tener que ver como encontrar la cadena con la que comparamos un string d’entrada:

Primero ejecutamos el binario del nivel para ver que ocurre:

level4@leviathan:~$ /wargame/level4 
Enter the password> aaa
bzzzzzzzzap. WRONG

A continuación con ltrace vemos que el binario cuando el password es incorrecto:

level4@leviathan:~$ ltrace /wargame/level4
__libc_start_main(0x8048523, 1, 0xbffffae4, 0x8048650, 0x8048600 <unfinished ...>
strcmp("h0no33", "kakaka")                                                                                                     = -1
printf("Enter the password> ")                                                                                                 = 20
fgets(Enter the password> aaa
"aaa\n", 256, 0xb7fe1300)                                                                                                = 0xbffff8fd
strcmp("aaa\n", "snlprintf\n")                                                                                                 = -1
puts("bzzzzzzzzap. WRONG"bzzzzzzzzap. WRONG
)                                                                                                     = 19
+++ exited (status 0) +++

La parte interesante es:

strcmp("aaa\n", "snlprintf\n")

Así la contraseña esta un poco más disimulada si usamos el comando strings, pero con ltrace dicha ofuscación no sirve de nada:

level4@leviathan:~$ /wargame/level4 
Enter the password> snlprintf
[You've got shell]!
sh-3.1$ cat /home/level5/.passwd 
Dx08I4vD

Otros niveles de este wargame:

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>