26 marzo 2010

Ataques de contraseñas, password cracking - 2 de 2

Tras la primera parte de la entrada sobre ataques en contraseñas y Password Guessing continuamos con el siguiente: password cracking.

PASSWORD CRACKING

El cracking de contraseñas consiste en intentar obtener el valor en claro de algún elemento cifrado.

Lo más común en un test de intrusión es ejecutar el ataque contra los ficheros de contraseñas de los sistemas operativos y aplicaciones en los que se obtenga acceso mediante exploits, errores de configuración o accesos físicos .

Las ventajas de este sistema es que ninguna cuenta será bloqueada y pueden utilizarse uno o varios sistemas para paralelizar las tareas y ganar velocidad. En general una vez extraídas de la fuente, el proceso se llevará acabo localmente.

Los archivos de contraseñas más comunes en sistemas Unix son:
  • Linux, Solaris: /etc/passwd y /etc/shadow
  • AIX: /etc/security/passwd
  • HPUX: /tcb/files/auth/*
Aunque siempre se puede consultar en guías del estilo Unixguide.net otras rutas. Para todos los casos es necesario disponer de un usuario con privilegios de root.

Los cifrados más típicos para estos ficheros son 3Des, MD5 (que comenzarán por $1$), BSDi, SHA256 ($5$) y SHA512 ($6$). Para lo que lo normal es utilizar la aplicación John The Ripper, aunque aún no tiene soporte  nativo para SHA512 o SHA256 usados en los últimos Linux. En este caso será necesario aplicar un parche.


Si disponemos de un hash del que desconocemos el algoritmo de origen, se puede consultar la web de John para tratar de averiguarlo por su formato.

En el caso de los sistemas Windows se definen dos algoritmos:
  • LANMAN (LM): en sistemas hasta XP
  • NT Hash (NTLM): en 2008, Vista y windows 7.
LANMAN tiene varias debilidades importantes, no diferencia entre mayusculas y minúsculas, lo que reduce el número posible de combinaciones y añade datos a contraseñas inferiores de 8 carácteres, por lo que observando la terminación del hash (AAD3B435B51404EE) es posible saber si es mayor o menor de este tamaño.

Además de ser Administrador o SYSTEM, para volcar las contraseñas en sistemas Windows es necesario utilizar aplicaciones del estilo Pwdump en alguna de sus múltiples versiones.

Las opciones más comunes y comodas para el cracking de contraseñas son el uso de técnicas "time-memory-trade-off" o rainbow tables. Con las que previamente se almacenan  en ficheros todas las combinaciones posibles para posteriormente ser consultadas.

Las herramientas para la generación de Rainbow tables:
Aunque estas tablas también pueden descargarse de sitios como:
Cualquier archivo con contraseña puede ser objeto de password cracking, como documentos ofímaticos PDF, DOC, XLS, PST, en los que se usará aplicaciones tipo Wondershare o ElcomSoft

13 comments :

Anónimo dijo...

Muy buen resumen!

Decir que en los sistemas de microsoft se puede utilizar la técnica pass the hash para no tener que crackear los passwords.

P.D.: Algun dia tendríais que dejar de filtrar los comentarios...

Newlog

Anónimo dijo...

Muy buen resumen!

Decir que en los sistemas de microsoft se puede utilizar la técnica pass the hash para no tener que crackear los passwords.

P.D.: Algun dia tendríais que dejar de filtrar los comentarios...

Newlog

xneo dijo...

Bueno, me gusto mas Password Guessing mas instructivo que Password Cracking. Saludos.

Miguel dijo...

me acabo de enterar del patch para el john... :) (y nosotros haciéndolo a mano...)

buena recopilación, buena entrada!

Ricardo dijo...

Que bien explicados este par de post

G0sU dijo...

Hola, gracias por tu post, es muy bueno y aclaratorio.

Solo me gustaría añadir, que si no me equivoco, los passwors BSDi empiezan por carácter "_".

Por otro lado, para obtener el hash has recomendado el uso del pwdump. La versión recomendada es la fgdump ya que proporciona protección para el DEP, encriptación de los datos y deshabilita el antivirus. Mientras que las anteriores versiones no lo hacen.

Y recordar que el meterpreter de msf tiene el comando hashdump. Que a diferencia del pwdump no requiere del servicio SMB abierto.

Anónimo dijo...

John el maldito, ya sabía que después de tanta instalación iba a tener que acabar formateando (aunque dentro de lo malo, fue genial)!

P.D. aprendido lo de shadow y lo e $1$

marabulla dijo...

Conocéis algún programa que permita realizar ataques por diccionario a un volumen truecrypt? Y que permita usar keyfiles?

Gracias.

marabulla dijo...

Conocéis algún programa que permita realizar ataques por diccionario a un volumen truecrypt? Y que permita usar keyfiles?

Gracias.

marabulla dijo...

Conocéis algún programa que permita realizar ataques por diccionario a un volumen truecrypt? Y que permita usar keyfiles?

Gracias.

G0sU dijo...

Hola, gracias por tu post, es muy bueno y aclaratorio.

Solo me gustaría añadir, que si no me equivoco, los passwors BSDi empiezan por carácter "_".

Por otro lado, para obtener el hash has recomendado el uso del pwdump. La versión recomendada es la fgdump ya que proporciona protección para el DEP, encriptación de los datos y deshabilita el antivirus. Mientras que las anteriores versiones no lo hacen.

Y recordar que el meterpreter de msf tiene el comando hashdump. Que a diferencia del pwdump no requiere del servicio SMB abierto.

marabulla dijo...

Conocéis algún programa que permita realizar ataques por diccionario a un volumen truecrypt? Y que permita usar keyfiles?

Gracias.

Ricardo dijo...

Que bien explicados este par de post