NOTA: Este post está sacado del libro "Hacking y Seguridad en Internet" de la editorial Ra-Ma, el cual me estoy leyendo y me ha parecido muy interesante postearlo. Las descargas estás subidas por mí.
0x00 INTRODUCCIÓN Las cuentas de usuarios pertenecientes a un sistema Microsoft Windows están guardados en pares de datos, es decir, dos datos que hacen referencia a los nombres de usuarios y a sus respectivas contraseñas. El sistema de almacenamiento se basa en una tabla donde quedan registrados el nombre y una cadena de caracteres alfanuméricos que representan la contraseña despues de haberle aplicado un sistema de encriptación basado en los Hashes.
Un hash es una función H(x) o algoritmo que aplica una transformación a un valor de entrada (x) de longitud variable, el cual devuelve otro valor modificado de longitud fija (h). El valor obtenido de aplicar la función Hash se caracteriza por ser unidireccional, es decir, es inviable encontrar el valor de entrada (contraseña) dado un valor obtenido por el Hash (h).
El lugar físico, archivo donde se guardan los datos de las credenciales de los usuarios, se denomina SAM ("Security Acces Manager") en máquinas que no sean del DC de directorio activo. El equivalente al SAM en el Directorio Activo se comenta más adelante. El formato de almacenamiento de passwords sigue la siguiente tabla:
______________ ______________ ______________
| Nombre | Identificación | LM | NTLM | |
| de | de | Hash | |Kerberos|
| Usuario | grupo | | Hash | |
|_________________________________________| El SAM se enuentra alojado en el directorio
%windir%\system32\config donde podemos encontrar un fichero llamado "SAM", que está formado por la representación de los bytes pertenecientes a la calve del registro HKEY_LOCAL_MAC
HINE\SAM. Si intentamos acceder desde el sistema de ficheros o desde el registro de Windows cuando el sistema está en funcionamiento se no snegará el acceso tanto a la lectura como a la escritura o copia de los datos.
0x01 ROBANDO EL SAM Como hemos visto, las contraseñas de las cuentas de usuarios se guardan en un fichero físico denominado SAM, el cual es inaccesible desde el sistema operativo cuando está encendido. Además sabemos que las versiones actuales de Windows tienen incorporado un sistema de ecnriptación Syskey de 128 bits, lo que dificulta la tarea de extracción de los hashes. También conocemos la ubicación del SAM y la clave de registro donde se guarda el contenido de este fichero convertido a bytes.
PWdump2 es una herramienta creada por Tod Sabin con el bojetivo de conseguir los datos del SAM que estuvieran encriptados con el servicio syskey, esto implica que pwdump2 podía trabajar con los sistemas operativos basados en Windows NT 4.0 con SP2, Windows 2000/2003 y XP. Su funcionalidad se basa en la inyección de código en bibliotecas DLL que tengan permiso de ejecución de administrador/system, más concretamente, utiliza el servicio LSASS.exe (Local Security Authority Subsistem( para inyectar el código y obtener como salida el SAM del sistema. La desventaja de esta herramienta es que se ejecuta en modo local y necesita permisos de administrador para poder funcionar.
Sintaxis: pwdump2 > fichero.txt
La siguiente versión de esta herramienta (pwdump3) funciona estableciendo una conexión del recurso compartido ADMIN$ con la máquina víctima. A través de esta conexión, instala un servicio denominado pwservice.exe qeu se encarga de extraer los hashes y enviarlos utilizando el protocolo SMB (Server Message Block), dicho protocolo se encarga del uso compartido de los archivos, carpeta e impresoras de forma transparente entre los ordenadores de uan red.
A partir de aqui utiliza el método de
DLL Injection. Como ya se habrán dado cuenta, esta herramente trabaja extrayendo el SAM a través de una red.
Su sintaxis es: PWDUMP3 <NombrePC [Fichero de Salida] [Nombre de Usuario]
DOWNLOADS
-
Para ver este enlace Registrate o Inicia SesionPWDUMP2
-
Para ver este enlace Registrate o Inicia SesionPWDUMP3
Aparte de las herramientas ya comentadas, existen otras como Cain & Abel, sobre las que puede encontrar manuales en la red.
0x02 CRACKEANDO EL SAM John The Ripper es una de las más famosas herrramientas de cracking de contraseñas. Las opciones de confuguración se realizan a través del modo consola, éstas son muy variadas y bastante liosas de especificar, sin embargo, se puede utilizar una configuración predeterminada definida dentro del archivo jhon.ini, que permite trabajar sin argumentos y conseguir buenos resultados en poco tiempo.
El modo de actuar de esta pre-configuarción premite encontrar la clave de los Hashes siguiendo una serie de procesos. En un principio, se usa un sistema de ruptura denominado "single crack", el cual aplica todas las reglas definidas en el apartado "#"Single crack" mode rules" del fichero john.ini. Si con este método no se encontrado la contraseña, el sistema pasa al siguiente proceso donde se usa un ataque de diccionario, la ubicación de esta lista de claves se especifica en el apartado "Wordfile", que se encuentra dentro del grupo "[Options]" en el archivo de configuración jhon.ini, el fichero que por defecto utiliza se denomin "Password.lst". Si con este ataque aún no se ha conseguido la contraseña. se establece el último modo de cracking denominado "incremental", es la técnica más potente, se caracteriza porqeu sigue unos patrones muy parecidos al ataque de fuerza bruta. Cada vez que esta herramienta descifra una clave y la muestra por pantalla, lo almacenará en un fichero denominado "jhon.pot".
DONWLOADs
-
Para ver este enlace Registrate o Inicia SesionJohn The Ripper