La room se encuentra disponible en TryHackMe
IMPORTANTE: La ubicación de las listas puede variar de usuario a usuario por lo que es probable que no coincidan con las mías.
Task,2,3,4,5 se pueden realizar utilizando la información que provee la room, por lo que acá solo describo la solución de la task 6.
Advice n°1 b16f211a8ad7f97778e5006c7cecdf31
Comenzamos viendo el primer consejo que da el experto al usuario:
Con esto vemos que le recomienda utilizar una combinación de números o símbolos estos estando al principio, al final o ambos casos, procedemos a analizar el hash para determinar que tipo de hash es se puede usar haiti como recomienda la room, una web app que lo permita, hashid,etc.
En este caso yo utilice una web app que se encuentra en www.tunnelsup.com
Habiendo identificado que es un MD5 o MD4 comenzamos a buscar una lista de palabras útil para este caso que es el nombre masculino en inglés usando la herramienta wordlistctl utilizamos el comando:
sudo python3 wordlistctl.py search male
Decidí utilizar malenames-usa-top1000 pero no tuve éxito por lo que utilicé otra lista la cual descargue usando: sudo python3 wordlistctl.py fetch -l english-proper-names ya con esta wordlist viendo las recomendaciones que le hicieron al usuario decidí probar con todas las reglas que tiene John por defecto usando el comando: sudo John hash.txt (este es el archivo donde tenemos el hash) — wordlist=english-proper-names.50.txt -format=Raw-MD5 -rules=ALL
Advice n°2 7463fcb720de92803d179e7f83070f97
Este consejo como se lee en la pagina utiliza lo mismo por lo que solo es necesario cambiar la lista de palabras por lo que usaremos femalenames-usa-top1000 se puede bajar utilizando el comando que mencione en el primer consejo.
sudo john hash.txt — wordlist= femalenames-usa-top1000.txt — rules=ALL — format=Raw-MD5
Advice n°3 f4476669333651be5b37ec6d81ef526f
Esta persona utiliza como contraseña una ciudad mexicana mi primera opción fue utilizar la lista towns_mx.txt pero fue inútil buscando mas opciones utilice la lista cities.txt
Comenzamos viendo qué tipo de hash es volví a utilizar la web app y es un MD5:
En este caso existe una regla específica para hashcat que hace el freak mutation. El comando: hashcat -m0 hash.txt cities.txt -r /usr/share/hashcat/rules/Incisive-leetspeak.rule –force (force lo utilicé debido a que utilizo una máquina virtual si no es el caso no lo utilicen)
Advice n°4 a3a321e1c246c773177363200a6c0466a5030afc
Comenzamos a investigar que tipo de hash es:
En este caso el consejo indica que debe usara su propio nombre por lo que hacemos una lista con opciones:
Como indica la pista se debe de utilizar una regla ya existente para John por lo que el comando es el siguiente: sudo john hash.txt — wordlist=name.txt — rules=ALL — format=Raw-SHA1
Advice n°5 d5e085772469d544a447bc8250890949
Investigamos qué tipo de hash es:
El consejo como vemos recomienda utilizar una canción de Adele y utilizar los caracteres a la inversa:
Para poder obtener una lista de Adele se utiliza la herramienta lyricpass de la siguiente manera: python3 lyricpass.py -a “Adele” este comando puede tardarse un poco por lo que recomiendo tener paciencia.
Ahora que tenemos la lista (raw-lytics…) recomiendo escribir una regla para poner los caracteres a la inversa esta se miraría de la siguiente forma dentro del archivo /etc/john/john.conf:
Procedemos a utilizar el comando: sudo john hash.txt — wordlist=raw-lyrics-2021–01–26–21.57.47 — rules:THM01 — format=Raw-MD5
Advice n°6 377081d69d23759c5946a95d1b757adc
Investigamos qué tipo de hash es:
El consejo nos indica que el numero es un número de teléfono de Saint Maarten:
Procedemos a generar la lista de palabras utilizando pnwgen esto tiene un truco debido a que debemos de poner el prefijo de ese lugar el cual es +1721 ya que este sería la combinación llamando desde EEUU, esto lo ponemos dentro del archivo prefix.txt que se encuentra dentro de la carpeta de pnwgen.
Ya con esto buscamos el tamaño de los números en ese lugar por lo encontrado en Internet es de 7 caracteres, procedemos a usar el comando python3 pnwgen.py este ahora nos preguntara cuantos caracteres deseamos escribimos 7 y esperamos.
Procedemos a usar el comando de John: sudo john hash.txt — wordlist=wordlist.txt — format=Raw-MD5
Advice n°7 ba6e8f9cd4140ac8b8d2bf96c9acd2fb58c0827d556b78e331d1113fcbfe425ca9299fe917f6015978f7e1644382d1ea45fd581aed6298acde2fa01e7d83cdbd
Investigamos que tipo de hash es, la web app que utilicé en la mayoría no detecto correctamente que tipo de hash es por lo que utilice haiti aun así no lo muestra en las primeras opciones:
Conociendo esto procedí a utilizar la lista rockyou con John usando el comando: sudo john hash.txt — wordlist=~/Documents/rockyou.txt — format=Raw-SHA3
Advice n°8 9f7376709d3fe09b389a27876834a13c6f275ed9a806d4c8df78f0ce1aad8fb343316133e810096e0999eaf1d2bca37c336e1b7726b213e001333d636e896617
En este consejo recomienda obtener una lista de palabras seleccionadas aleatoriamente de un sitio web por lo que utilizamos cewl con el siguiente comando para obtener la lista: cewl -d 2 -w $(pwd)/example.txt http://10.10.171.62/rtfm.re/en/sponsors/index.html
Además, recomienda repetir palabras por lo que yo lo realice creando una regla para John la cual es así:
En este caso no encontré una manera correcta de obtener el tipo de hash que es por lo que utilice la pista que da la room que indica Blake2 luego busque en Google cual es la opción de blake2 para john por lo que el comando queda: sudo john hash.txt — wordlist=example.txt — format=Raw-Blake2 — rules=THM01
Advice n°9 $6$kI6VJ0a31.SNRsLR$Wk30X8w8iEC2FpasTo0Z5U7wke0TpfbDtSwayrNebqKjYWC4gjKoNEJxO/DkP.YFTLVFirQ5PEh4glQIHuKfA/
El ultimo consejo se puede realizar utilizando rockyou y no pude encontrar una forma de detectar que tipo de hash es por lo que deje que John lo encontrara automáticamente no indicando un formato especifico por lo que utilice comando es: sudo john hash.txt — wordlist=~/Documents/rockyou.txt