SpookyPass
All the coolest ghosts in town are going to a Haunted Houseparty - can you prove you deserve to get in?
Information Gathering
1
2
/home/kali/Documents/htb/challenges/spookypass:-$ unzip SpookyPass.zip
inflating: rev_spookypass/pass
Extraigo el contenido del archivo comprimido y obtengo un ejecutable llamado pass
.
1
2
3
4
5
/home/kali/Documents/htb/challenges/spookypass:-$ tree .
.
├── SpookyPass.zip
└── rev_spookypass
└── pass
Se trata de un ejecutable ELF de 64 bits para Linux.
1
2
/home/kali/Documents/htb/challenges/spookypass:-$ file pass
pass: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=3008217772cc2426c643d69b80a96c715490dd91, for GNU/Linux 4.4.0, not stripped
Ejecuto el binario e identifico que solicita una contraseña para continuar.
1
2
3
4
/home/kali/Documents/htb/challenges/spookypass:-$ ./pass
Welcome to the SPOOKIEST party of the year.
Before we let you in, you'll need to give us the password: pass
You're not a real ghost; clear off!
Este comportamiento sugiere que el binario contiene algún mecanismo de validación de contraseñas.
Misconfiguration Exploitation
Utilizo strings para extraer cadenas de texto del binario, y revela una posible contraseña en texto plano.
1
/home/kali/Documents/htb/challenges/spookypass:-$ strings pass
Se ejecuta el binario con ltrace para observar las funciones que se llaman en tiempo de ejecución y analizar la comparación de la contraseña introducida.
1
/home/kali/Documents/htb/challenges/spookypass:-$ ltrace ./pass
La salida de ltrace muestra que el programa utiliza strcmp
para comparar la entrada con la cadena s3cr3t_p455_f0r_gh05t5_4nd_gh0ul5
, lo que confirma que esta es la contraseña correcta.
Al introducirla en la ejecución del binario, se obtiene la flag.
1
2
3
4
5
/home/kali/Documents/htb/challenges/spookypass:-$ ./pass
Welcome to the SPOOKIEST party of the year.
Before we let you in, you'll need to give us the password: s3cr3t_p455_f0r_gh05t5_4nd_gh0ul5
Welcome inside!
HTB{un0bfu5c4t3d_5tr1ng5}