Tube la necesidad de recuperar la clave de Administrador de un servidor Windows XP. Me puse a averiguar y a continuacion hago un breve HOWTO del procedimiento:
1) Bootear la maquina desde un CD o PenDrive USB con GNU/Linux. Cualquier version Live-CD sirve.
2) Montar la partición del disco con la instalación de Windows, por ejemplo si la instalación se encuentra en la primera partición del disco IDE conectado a la primera controladora como MAESTRO lo haria así:
mount -t (vfat o ntfs) /dev/hda1 /mnt
3) Copiar a un pendrive o transferir por red los archivos SAM y system ubicados en el directorio /WINDOWS/system32/config de la instalación de Windows:
cd /mnt/WINDOWS/system32/config/
cp SAM system /mnt/sda1 (suponiendo que tenemos un pendrive usb)
scp SAM system usuario@ip_destino
4) En una maquina con GNU/Linux instalar los programas samdump2 , bkhive y john, en Debian lo haria de la siguiente manera:
apt-get install samdump2 bkhive john
5) Recupera la tabla hash con los nombres de usuarios y claves encriptadas:
bkhive SYSTEM temp.txt
samdump2 SAM temp.txt > hashes.txt
6) Usar john the ripper para intentar desencriptar la clave, por lo general la mayoria de los usuarios usan claves muy debiles, por lo que podria ser suficiente usar el metodo simple:
john hashes.txt
Luego se puede probar con diccionarios, obviamente hay que tener los diccionarios:
john hashes.txt -w:eng.txt
Finalmente podemos intentar con el metodo incremental:
john hashes.txt -i:all
Con esto obtendremos un archivo llamado john.pot donde podremos ver los nombres de las cuentas y claves obtenidas.
