lunes, 14 de diciembre de 2009

Bucle infinito al iniciar sesión en Windows XP

Un amigo me ha dado un toque porque cuando intentaba iniciar una sesión en Windows XP ésta se le cerraba automáticamente, por lo que no podía acceder al sistema operativo.



El problema es que algún tipo de malware cambia en el registro el nombre de la aplicación responsable del inicio de sesión, por lo que ésta nunca se produce.

No podemos acceder al registro de Windows XP porque no tenemos acceso a la sesión, por lo tanto tenemos dos posiblidades para modificarlo, o realizar una instalación paralela en nuestro equipo o utilizar otro equipo con Windows XP instalado.

Sea cual sea nuestra decisión el proceso para reparar el problema es el siguiente:

A. Utilizando otro equipo con Windows XP instalado
  1. Arrancar desde el CD de Windows en el equipo infectado.
  2. Enchufar un pendrive tras arrancar para que se cargue el driver y lo reconozca el símbolo del sistema.
  3. Seleccionar (R) Reparar una instalación existente.
  4. Copiar el fichero C:\Windows\System32\config\software al pendrive.
  5. Abrir el registro de Windows (regedit) en el otro equipo con Windows XP.
  6. Hacer click encima de HKEY_LOCAL_MACHINE.
  7. Pulsar sobre Archivo -> Cargar subárbol.
  8. Seleccionar el fichero software que hemos guardado en el pendrive.
  9. Escribir RamaAuxiliar y pulsar Aceptar.
  10. Acceder a la rama HKEY_LOCAL_MACHINE\RamaAuxiliar\Microsoft\Windows NT\CurrentVersion\Winlogon. En esta carpeta el valor Userinit debe existir y ser de tipo REG_SZ. Su contenido debe ser "C:\WINDOWS\system32\userinit.exe," (atención a la coma). Si no existiera la clave debes crearla. (Esta es la clave que modifica el malware poniendo algún otro valor).
  11. Pulsar sobre RamaAuxiliar y sobre Archivo -> Descargar subárbol, cerrar el Editor del Registro.
  12. Volver a ejecutar los pasos 1, 2 y 3, esta vez para copiar el fichero software reparado a la carpeta C:\Windows\system32\config.
  13. Reiniciar el sistema e iniciar sesión en el sistema que estaba dañado.
B. Instalación paralela
  1. Instalar Windows XP en paralelo a la instalación existente.
  2. Arrancar el equipo desde la instalación paralela y abrir el registro de Windows (regedit).
  3. Hacer click encima de HKEY_LOCAL_MACHINE.
  4. Pulsar sobre Archivo, Cargar subárbol.
  5. Seleccionar el fichero C:\Windows\system32\config\software (o dondequiera que esté ese fichero de la copia de Windows infectada).
  6. Escribir RamaAuxiliar y pulsar Aceptar.
  7. Acceder a la rama HKEY_LOCAL_MACHINE\RamaAuxiliar\Microsoft\Windows NT\CurrentVersion\Winlogon. En esta carpeta el valor Userinit debe existir y ser de tipo REG_SZ. Su contenido debe ser "C:\WINDOWS\system32\userinit.exe," (atención a la coma). Si no existiera la clave debes crearla. (Esta es la clave que modifica el malware poniendo algún otro valor).
  8. Pulsar sobre RamaAuxiliar y sobre Archivo, Descargar subárbol, cerrar el Editor del Registro.
  9. Reiniciar el sistema e iniciar sesión en el sistema que estaba dañado.
Con esto queda reparado el sistema y podrás entrar de nuevo en tu sesión, instala un buen antivirus y pásalo porque algún bicho tienes.

4 comentarios:

Anónimo dijo...

como puedo copiar el archivo C:\Windows\System32\config\software
al pendrive, porfavor ayudenme urgenteee :(

Emilio Medina dijo...

Tienes que averiguar qué unidad le ha asignado Windows a tu pendrive, probablemente será la E:

Para saber si tu unidad es esa, escribe dir E: y comprueba que la información que te devuelve corresponde a tu pendrive. Si no es, prueba con otras: D:, F:, etc.. hasta que des con la que es.

Una vez lo sepas escribe copy C:\Windows\System32\config\software E:\ y ya lo tienes en el pendrive.

Un saludo.

Plutonic dijo...

Pues, sigo los pasos perfectamente hasta el nº6 del aprtado B. En cuanto intento cargar el subárbol me sale esta ventana de windows:

No se puede cargar C:\Windows\system32\config\software: el proceso no puede tener acceso al archivo porque está siendo usado por otro proceso

He probado con programas tipo unlocker pero no funciona.
A modo de información, la instalación paralela de windows xp, se esta ejecutando en una maquina virtual (Oracle Virtual Box 4.0.2)
También es la primera vez me ocurre este error.

Emilio Medina dijo...

Tienes que asegurarte que intentas cargar el fichero de registro del Windows infectado y no el de la instalación paralela.

¿Desde donde arrancas tu máquina virtual? Si compartes ficheros con la instalación anterior no te va a dejar editarlo.

Una solución es copiar el fichero a un pendrive y luego editarlo desde ahí en la máquina virtual. El problema sería que luego tienes que sobreescribir el original, eso puedes hacerlo arrancando con knoppix o desde el cd de windows.