jueves, 8 de septiembre de 2022

HASHES NTLM: Crack sencillo con Hashcat

 Estimados amigos de Inseguros !!!


En este pequeño post voy a mostraros algunas opciones que tienen Hashcat, la utilidad de cracking usada desde antaño, junto a Jhon The Ripper.

En una "nutshell" Hashcat es una herramienta que conoce muuuuchos algoritmos y nos ofrece la posibilidad de "descifrarlos". 


Como sabes, estas herramientas hacen un uso intensivo de procesamiento, y da la casualidad que las GPU, las tarjetas gráficas "para los juegos" o el diseño o lo que sea, ofrecen cálculos optimizados que aumenta el rendimiento a la hora de hacer la tarea de cracking...

En este post hablamos un poco más en detalle de esta introducción y algunas reflexiones.

En esta ocasión vamos a probar una tarjeta normalita, algo vieja, para crackear hashes NTLM que obtenemos de procesos de hacking con las herramientas que ya sabes, por ejemplo mimikatz y sucedáneos... 

Por ejemplo, voy a probar estos hashes...

F5EE72A6914C82EF4C7C957A834A9799 Kino1234
5B16623C240570866E9401F54A4CE697 Kino123!
616F1CA2F7B33FE56941DFF2AAB882D0 kino123

La tarjeta es esta:

CUDA API (CUDA 11.7)
====================
* Device #1: NVIDIA GeForce GTX 1650, 3321/4095 MB, 14MCU

Si usas .\hashcat.exe -a 3 -m 1000 fichero_con_hashes.txt --username --force -O -w 3 verás como hasta 6 caracteres es practicamente inmediato, pero el 7 le cuesta un poco más. 


Con una mejor tarjeta y 8 caracteres es viable, más no...

Por eso empleamos máscaras, una opción que nos permite decirle a Hashcat que conocemos algún patrón.

En esta ocasión ejecutamos hashcat dicíendole una máscara en la que el primer caracter es mayúscula. En tus contraseñas se da este circunstancia? xD. Es más habitual de lo que crees.

Voy a mejorar un poco la máscara y voy a decirle que tenga 8 caracteres, el primero una mayúscula y el último un "caracter raro" o un número. La máscara sería así : -1 ?d?s,?u?a?a?a?a?a?a?1

Donde creamos un juego especial, denominado -1, que contiene ?d?s ( números y caracteres) una coma, y la máscara usando este juego especial. Intento explicarlo mejor:

-1(como se llama el juego de caracteres) ?d?s ( le digo d y s, que son números y caracteres especiales),?u?a?a?a?a?a?a?1 (empiezo con ?u letras mayúsculas, seguido de 6 ?a, que son mayúsculas, minúsculas y especiales, seguido de ?1, que es el juego especial que definimos)

Con las máscaras también podemos hacer otra, por ejemplo:
Verne?a?a?a?a 
Esto buscaría contraseñas por ejemplo:
Verne2021
Verne----
Verne20--
Verne--20

Si le decimos:
-1 ?d?s, Verne?a?a?1?1 encontraría contraseñas que empiezan por Verne, que tienen 9 caracteres de longitud, y que los dos últimos caracteres son o número o "especial".

Al final es jugar un poco con las máscaras e intentar acotar mejor el keyspace de búsqueda para hacerlo más rápido. Al final, voy a tirar este mensaje, en el que guardo mis máscaras en el fichero hcmask.

.\hashcat.exe -a 3 -m 1000 libro2.txt --username --force -O -w 3 .\primera_mayuscula_hasta10_acabaensimbolo.hcmask



En un rato (horas)  empezaré a ver resultados. En este caso libro2.txt son 4500 contraseñas de una empresa que estamos auditando y que hemos puesto alguna máscara más.


Espero que os sirve de ayuda, en otro post hablaremos de RULES y como podemos mejorar este proceso de cracking.

Como sabes, dentro del kill chain de los sistemas Microsoft, hacerse con credencial es fundamental, y aunque tenemos muchas opciones, las contraseñas en claro molan.

Si eres blue team, puedes realizar estos ejercicios contra tus hashes, para comprobar qué están haciendo tus usuarios.

Espero que os sirva de ayuda, y como siempre, gracias por leerme.