El día de ayer fue caótico para los usuarios de Windows XP que tienen instalado al antivirus AVG, sea en su versión gratis o profesional. Por un problema en la actualización de la base de datos, el antivirus confundió al archivo user32.dll, crítico para el funcionamiento de Windows, como infectado por un virus. Como consecuencia ha habido una gran cantidad de ordenadores escupiendo pantallas azules de la muerte de un día para el otro. Nosotros te explicamos cómo reparar esto.
Un domingo para el olvido
Todo parecía indicar que se iba a tratar de un domingo cualquiera: Planear el almuerzo del mediodía, leer y ver algo sobre fútbol, y principalmente descansar. Pero algo no estaba bien cuando el móvil comenzó a sonar de manera desesperada, un grito de auxilio detrás de otro. En total recibí media docena de llamadas en un lapso poco menor a 40 minutos, todos mostrando el mismo patrón la misma condición: Pantalla azul, User32.dll, STOP 0x0135. Por un momento pensé: "¿Explotó Internet y no me enteré?" Era una coincidencia demasiado grande como para tratarse de casos aislados.
Y no lo fueron, lamentablemente. Al parecer, la actualización del antivirus correspondiente al día 09/11 tenía alguna clase de error, el cual reportaba al archivo user32.dll como infectado por un virus. El supuesto bicharraco se llamaba PSW.Banker4.APSA, y la única manera de desinfectar al sistema era borrando el archivo o colocándolo en cuarentena. La parte complicada fue que al intentar borrarlo, AVG reportaba al usuario que se eliminaba dicho archivo, podía causar inestabilidad en el sistema. Bueno, el término "inestabilidad" se quedó miserablemente corto. Hoy lunes aún hay muchos ordenadores inutilizados debido a este desperfecto, con usuarios y administradores de sistema restaurando este archivo a diestra y siniestra.
Por suerte, reparar este problema no involucra tener que reinstalar todo el sistema operativo, pero dependiendo de la situación en la que te encuentres, deberás trabajar un poco más de lo normal. Hay dos métodos para hacer que el ordenador se recupere de la pantalla azul con el user32.dll, pero primero debes tener en cuenta una cosa: La gran mayoría de los casos se han reportado sobre Windows XP con el Service Pack 2. Si bien la actualización estaba defectuosa y puede haber afectado al SP3 también, debes saber de antemano qué versión del archivo necesitarás para restaurar, si del SP2 o del SP3. Nunca ha sido bueno mezclar versiones diferentes de bibliotecas (como por ejemplo colocar el user32.dll del SP2 sobre una instalación del SP3), por lo tanto no lo recomendamos.
Método 1: Probando el Modo Seguro
Deberás descartar primero si el ordenador no se inicia en Modo Seguro a causa de este problema. Los reportes han sido algo vagos en este aspecto, pero lo primero que recomendó AVG en sus foros es tratar de iniciar a Windows en Modo Seguro e intentar restaurar la biblioteca desde allí. En caso de que no inicie, salta directamente al método dos.
a) Si el ordenador se inicia en Modo Seguro, el primer paso es comprobar si el user32.dll falsamente acusado se encuentra en el "Virus Vault" del AVG. Para ello, abre el AVG y ve al Virus Vault. Si allí aparece una entrada indicando que el archivo user32.dll ha sido infectado, selecciónalo y escoge la opción Restore. Una vez que hayas hecho eso, reinicia el ordenador y lo primero que debes hacer es actualizar en antivirus, ignorando cualquier advertencia de AVG sobre el user32.dll. La nueva base de datos ya tiene este inconveniente corregido y tras la actualización no tendrás más problemas.
b) Si no encuentras ninguna entrada en el Virus Vault, eso significa que el archivo fue eliminado directamente. Para restaurarlo, deberás revisar la carpeta llamada "dllcache" dentro de C:Windowssystem32, por si hay una copia de seguridad allí. Si la hay, entonces deberás copiar (no mover, copiar) este archivo de regreso a C:Windowssystem32, para restaurar su funcionalidad. Una vez que hayas hecho eso, reinicia y actualiza en antivirus. Repetimos: No demores la actualización, aplícala de inmediato.
c) En caso de que no exista una copia de la biblioteca en la carpeta dllcache, deberás adquirirla de una instalación funcional de XP. Recuerda que la versión debe igualar el tipo de Service Pack que esté instalado en tu ordenador. El mejor lugar para buscar dicha copia es en el disco de instalación de Windows XP, pero existen en Internet varios sitios que almacenan copias de dichas bibliotecas. Por las dudas, nosotros dejaremos aquí dos enlaces temporales para las versiones del SP2 (clic aquí) y el SP3 (clic aquí). El resto es como en el paso b.
Método 2: El peor escenario
Bien, has intentado iniciar en Modo Seguro pero Windows se ha rehusado completamente. El punto principal sigue siendo el mismo: Debes colocar una copia de user32.dll de acuerdo a tu service pack dentro de la carpeta system32, sea como sea. Si tienes el disco de instalación de Windows XP, entonces podrás usar la Consola de Recuperación. Inserta el CD en el ordenador e inicia desde allí. Verás la clásica pantalla de instalación de Windows, pero en vez de presionar Intro para instalar, deberás presionar la tecla R para invocar la consola.
Confirma la instalación de Windows que deseas explorar (escribiendo el número que aparece al lado y presionando Intro) y escribe la contraseña del administrador en caso de que la solicite (si no hay contraseña, sólo presiona Intro). Ahora debes tomar el archivo desde el disco de instalación y copiarlo de regreso al disco duro. Si sabes poco y nada de DOS entonces te recomendamos que estudies atentamente las imágenes que acompañan al artículo. Hemos escrito todos los comandos necesarios para que puedas llevar a buen puerto esta tarea. En resumen, debes ir a la unidad de discos ópticos (D: en nuestro caso) y copiar el archivo user32.dl_ (nota el guión bajo) a la raíz del disco duro (C: en nuestro ejemplo). Vuelve al disco, baja al directorio raíz (con el comando cd ..) y utiliza el comando Expand para convertir el user32.dl_ en user32.dll. Una vez expandido, copia el user32.dll en C:Windowssystem32 y C:Windowssystem32dllcache, así quedará una copia por si las moscas. Para finalizar la operación escribe "exit" y confirma con Intro.
Eso es todo. Recuerda que debes actualizar el antivirus apenas recuperes el sistema, de lo contrario te volverá loco/a con falsas alarmas. Si bien este artículo se enfoca en el problema del AVG, también te servirá como referencia para restaurar otros archivos de sistema en una situación similar. Puede que esto provoque cierto éxodo desde AVG hacia otros antivirus, pero lo cierto es que todos tienen algún grado de falsos positivos y siempre es preferible un antivirus paranoico a tener que lamentar una pérdida de información. ¡Buena suerte!