En Windows NT/2000/XP/2003 las contraseñas se almacenan en el archivo SAM. Este es el fichero que contiene los nombres de usuario y las contraseñas de todos los usuarios del sistema local, o incluso del dominio, si se trata de un controlador de dominio.
El archivo SAM se encuentra en la ruta \%systemroot%system32config
Dado que el archivo está siendo utilizado por el sistema es imposible abrirlo o copiarlo. Una buena forma de hacerlo es disponer de un disco de inicio, con el programa Ntfsdos para ejecutarse de tal forma que se monte la partición NTFS y se reconozca. En mi caso particular, siempre llevo en la cartera una Business Card de 50 MB con la distro Damn Small Linux, una sencilla Knoppix Live CD, que me permite buscar en la carpeta /disks el punto de montaje Windows y hurgar en sus entrañas.
Copiada la SAM a un disco, utilizando el programa Pwdump2.exe, se copia en un fichero de texto que luego puede ser desencriptado con programas como LC5 o SamInside.
Hay varias formas de obtener la SAM. Una es copiarla de la ruta indicada más arriba, aunque también se encuentra una copia en la ruta \%systemroot%repair, si bien en este sitio sólo es posible localizar la cuenta del Administrador y la del Invitado; siempre teniendo en cuenta que el instalador del sistema no cambiase la contraseña de administrador al poco de instalarlo.
La copia de seguridad de la SAM puede descompactarse con
C:> expand sam._ sam
La SAM también puede volcarse desde el propio Registro de Windows, mediante:
regedit.exe /E /A samexport.txt "HKEY_LOCAL_MACHINESAMSAMDomainsAccount"
Se ejecuta luego una utilidad como Samdump, de esta forma:
SAMDump.exe > hashes.txt
Y los hashes obtenidos ya se pueden pasar a LC5 o SamInside.
¿Qué es Syskey?
Syskey es el gran desconocido por muchos usuarios de Windows. Se trata de una utilidad que dota, en principio, de seguridad extrema, a la propia SAM. Microsoft la colocó ahí precisamente para evitar que la SAM pudiera ser crackeada.
Para ejecutarlo basta con teclear en Ejecutar:
Syskey
Si se pulsa sobre la opción de "Cifrado habilitado", la base de datos queda fortalecida. Pulsando en "Actualización" se obliga a escribir una contraseña al encender el ordenador, e inclusive a almacenar la SAM en un disquete, sin el cual no será posible arrancar el PC.
La utilidad de Todd Sabin, llamada Pwdump2, permite el volcado de los hashes de la SAM, aunque estén encriptados con Syskey. Este pequeño programa utiliza el mecanismo de inyección DLL, vulnerando LSASS.EXE (Local Security Authority Subsystem), que implica conocer el PID (Process ID) de LSASS.EXE para que Pwdump2 funcione. Hay una versión de Pwdump, la 3, que permite la extracción remota de los hashes, sin necesidad de estar físicamente situado delante de la máquina.
Ahora bien, ¿alguien siquiera puede imaginar lo que sería una utilidad que vulnerara LSASS.EXE, sin necesidad de Pwdump2 y que, además, fuera la primera herramienta capaz de romper el cifrado Syskey? ¿Suena alucinante, verdad? Y si decimos que ya existe. Y si, además, ¡añadimos que se encuentra en español y que ha sido traducida por el equipo de Seguridad0! Y si, además, ¡agregamos que es capaz de generar diccionarios para realizar ataques por fuerza bruta!
La utilidad, en cuestión, se llama SamInside. Es gratuita, aunque existe una versión más completa de pago, y podemos detallar que estamos trabajando con su autor, Alexander Poluektov, en futuras nuevas versiones, tanto en el desarrollo como en la localización al español. SamInside trabaja con métodos híbridos de ataques por diccionario y fuerza bruta, agregando símbolos al azar a palabras del diccionario.
La versión en español de SamInside puede descargarse desde la web del autor. SamInside importa SAM, Syskey, ficheros Pwdump, hashes LC4 y LC5, realizando ataques distribuidos desde varios ordenadores para recuperar una contraseña.
Hashes
Ni qué decir tiene que alguien que instale un sniffer en algún punto de la red donde pueda colocar la tarjeta de red en modo promiscuo en una configuración con hubs, podría hacerse con todo tipo de hashes. En este sentido, la utilidad PasswordsPro es capaz de hacerse con todo tipo de contraseñas, ya sean MD 4 ó MD5, y hasta de MySQL. Los hashes de MD5 comienzan siempre con $1; los que comienzan con $2, curiosamente, pertenecen al algoritmo de encriptación Blowfish.
De nuevo PasswordsPro está traducido al español por el equipo de Seguridad0, ya que se trata del mismo autor que realizó SamInside, con el que colaboramos activamente. PasswordsPro es totalmente freeware.
Contramedidas
Aunque parezca un contrasentido, invitamos a los administradores a encriptar con Syskey, siempre que puedan, pero eso sí, con contraseñas largas, difíciles de adivinar y que incluyan símbolos especiales.
Para evitar el sniffing de una red, y si no se puede operar en un entorno de switches, para administración remota lo mejor es conectarse remotamente siempre bajo SSH; nunca con un Telnet o FTP que pudiera dejar las contraseñas al descubierto.
Lo visto aquí, en este breve artículo, es sólo la punta del iceberg. Así que la mejor recomendación es tener cuidado y ser precavido.
Más información:
Caín
http://www.oxid.it/Ntfsdos
http://www.sysinternals.com/ntw2k/freeware/ntfsdos.shtml
Damn Small Linux
http://www.damnsmalllinux.org
LC5
http://www.atstake.com/products/lc/download.html
Pwdump2
http://packetstormsecurity.org/Crackers/NT/
Samdump
http://www.insidepro.com/download/samdump.exe
SamInside español
http://www.insidepro.com/eng/saminside.shtml
PasswordsPro español
http://www.insidepro.com/eng/passwordspro.shtml
El archivo SAM se encuentra en la ruta \%systemroot%system32config
Dado que el archivo está siendo utilizado por el sistema es imposible abrirlo o copiarlo. Una buena forma de hacerlo es disponer de un disco de inicio, con el programa Ntfsdos para ejecutarse de tal forma que se monte la partición NTFS y se reconozca. En mi caso particular, siempre llevo en la cartera una Business Card de 50 MB con la distro Damn Small Linux, una sencilla Knoppix Live CD, que me permite buscar en la carpeta /disks el punto de montaje Windows y hurgar en sus entrañas.
Copiada la SAM a un disco, utilizando el programa Pwdump2.exe, se copia en un fichero de texto que luego puede ser desencriptado con programas como LC5 o SamInside.
Hay varias formas de obtener la SAM. Una es copiarla de la ruta indicada más arriba, aunque también se encuentra una copia en la ruta \%systemroot%repair, si bien en este sitio sólo es posible localizar la cuenta del Administrador y la del Invitado; siempre teniendo en cuenta que el instalador del sistema no cambiase la contraseña de administrador al poco de instalarlo.
La copia de seguridad de la SAM puede descompactarse con
C:> expand sam._ sam
La SAM también puede volcarse desde el propio Registro de Windows, mediante:
regedit.exe /E /A samexport.txt "HKEY_LOCAL_MACHINESAMSAMDomainsAccount"
Se ejecuta luego una utilidad como Samdump, de esta forma:
SAMDump.exe > hashes.txt
Y los hashes obtenidos ya se pueden pasar a LC5 o SamInside.
¿Qué es Syskey?
Syskey es el gran desconocido por muchos usuarios de Windows. Se trata de una utilidad que dota, en principio, de seguridad extrema, a la propia SAM. Microsoft la colocó ahí precisamente para evitar que la SAM pudiera ser crackeada.
Para ejecutarlo basta con teclear en Ejecutar:
Syskey
Si se pulsa sobre la opción de "Cifrado habilitado", la base de datos queda fortalecida. Pulsando en "Actualización" se obliga a escribir una contraseña al encender el ordenador, e inclusive a almacenar la SAM en un disquete, sin el cual no será posible arrancar el PC.
La utilidad de Todd Sabin, llamada Pwdump2, permite el volcado de los hashes de la SAM, aunque estén encriptados con Syskey. Este pequeño programa utiliza el mecanismo de inyección DLL, vulnerando LSASS.EXE (Local Security Authority Subsystem), que implica conocer el PID (Process ID) de LSASS.EXE para que Pwdump2 funcione. Hay una versión de Pwdump, la 3, que permite la extracción remota de los hashes, sin necesidad de estar físicamente situado delante de la máquina.
Ahora bien, ¿alguien siquiera puede imaginar lo que sería una utilidad que vulnerara LSASS.EXE, sin necesidad de Pwdump2 y que, además, fuera la primera herramienta capaz de romper el cifrado Syskey? ¿Suena alucinante, verdad? Y si decimos que ya existe. Y si, además, ¡añadimos que se encuentra en español y que ha sido traducida por el equipo de Seguridad0! Y si, además, ¡agregamos que es capaz de generar diccionarios para realizar ataques por fuerza bruta!
La utilidad, en cuestión, se llama SamInside. Es gratuita, aunque existe una versión más completa de pago, y podemos detallar que estamos trabajando con su autor, Alexander Poluektov, en futuras nuevas versiones, tanto en el desarrollo como en la localización al español. SamInside trabaja con métodos híbridos de ataques por diccionario y fuerza bruta, agregando símbolos al azar a palabras del diccionario.
La versión en español de SamInside puede descargarse desde la web del autor. SamInside importa SAM, Syskey, ficheros Pwdump, hashes LC4 y LC5, realizando ataques distribuidos desde varios ordenadores para recuperar una contraseña.
Hashes
Ni qué decir tiene que alguien que instale un sniffer en algún punto de la red donde pueda colocar la tarjeta de red en modo promiscuo en una configuración con hubs, podría hacerse con todo tipo de hashes. En este sentido, la utilidad PasswordsPro es capaz de hacerse con todo tipo de contraseñas, ya sean MD 4 ó MD5, y hasta de MySQL. Los hashes de MD5 comienzan siempre con $1; los que comienzan con $2, curiosamente, pertenecen al algoritmo de encriptación Blowfish.
De nuevo PasswordsPro está traducido al español por el equipo de Seguridad0, ya que se trata del mismo autor que realizó SamInside, con el que colaboramos activamente. PasswordsPro es totalmente freeware.
Contramedidas
Aunque parezca un contrasentido, invitamos a los administradores a encriptar con Syskey, siempre que puedan, pero eso sí, con contraseñas largas, difíciles de adivinar y que incluyan símbolos especiales.
Para evitar el sniffing de una red, y si no se puede operar en un entorno de switches, para administración remota lo mejor es conectarse remotamente siempre bajo SSH; nunca con un Telnet o FTP que pudiera dejar las contraseñas al descubierto.
Lo visto aquí, en este breve artículo, es sólo la punta del iceberg. Así que la mejor recomendación es tener cuidado y ser precavido.
Más información:
Caín
http://www.oxid.it/Ntfsdos
http://www.sysinternals.com/ntw2k/freeware/ntfsdos.shtml
Damn Small Linux
http://www.damnsmalllinux.org
LC5
http://www.atstake.com/products/lc/download.html
Pwdump2
http://packetstormsecurity.org/Crackers/NT/
Samdump
http://www.insidepro.com/download/samdump.exe
SamInside español
http://www.insidepro.com/eng/saminside.shtml
PasswordsPro español
http://www.insidepro.com/eng/passwordspro.shtml