En entradas anteriores vimos cómo detectar si tu WordPress está infectado. La mejor solución es restaurar una copia de seguridad completa y limpia del sitio. Pero no siempre se tiene la suerte de disponer de una. Otras veces es difícil saber en que momento se infectó el sitio. Así que es posible que tengas que enfrentarte a la tarea de limpiar un sitio WordPress infectado. Vamos a ello.

Cierra tu sitio y cambia las contraseñas.

Es recomendable que cierres tu sitio en cuanto sepas que está infectado. Posiblemente el “nuevo dueño” de tu web tratará de reinfectar tu sitio en cuanto le sea posible, así que hay ponerle todas las barreras posibles.

Seguramente tu proveedor de hosting tenga algún sistema para bloquear el acceso a tu web con una contraseña. Si lo prefieres puedes modificar tu archivo .htaccess (en la raiz de tu WordPress) incluyendo el siguiente código:

order deny,allow
deny from all
allow from "aquí tu dirección IP"

Sustituyendo “aquí tu dirección IP” por tu dirección IP pública. Puedes saberla aquí: http://ip-lookup.net/

Hecho esto deberías cambiar todas las contraseñas por que posiblemente alguna está en poder del atacante:

  • Contraseñas de los usuarios de WordPress
  • Contraseña del FTP
  • Contraseña del panel de control de tu hosting

Preparando la limpieza

Lo fundamental ahora es saber que archivos puedes reemplazar por otros nuevos y cuales tienes que desinfectar. En el post de cómo restaurar una copia de seguridad vimos que partes de WordPress contienen los datos vitales de tu sitio.

Resumiendo, las partes más importantes serían:

  • La base de datos, puedes acceder a través del panel de control de tu hosting.
  • Archivo wp-config.php en el directorio raíz de tu instalación de WordPress
  • Carpeta wp-content/uploads
  • Carpeta wp-content/languages
  • Carpeta wp-content/themes/[tema activo] (Si tu tema tiene modificaciones o utilizas un tema hijo)
  • Archivo .htaccess en el directorio raíz.
  • Archivos de verificación de Google u otros buscadores en el directorio raíz.

Todos los demás archivos los puedes sustituir por otros nuevos sin problema, porque no guardan información específica de tu sitio. De todas formas haz una copia de todo tu sitio por si metes la pata.

Sustituir archivos no específicos de tu sitio

Es difícil saber donde están todos los archivos infectados de tu web. Así que vamos a hacerlo fácil borrando todos aquellos archivos que se pueden reemplazar sin que pierdas tus datos.

Archivos del core de WordPress

Lo primero es saber que versión de WordPress tienes instalada. Para ello abre el archivo readme.html en el raíz de tu web y ahí lo tienes bien claro.

directorio con copia de seguridad de WordPress

Archivos y carpetas presentes en una instalación de WordPress

Una vez que lo sepas descarga tu versión del sitio oficial de WordPress. Con tu gestor de FTP puedes sustituir los archivos antiguos con los nuevos:

  • Carpeta wp-admin
  • Carpeta wp-includes
  • Todos los archivos del raíz excepto los mencionados más arriba

Plugins y plantilla

Lo mismo ocurre con los plugins que tengas instalados. Haz una lista de todos ellos y reemplazarlos por una nueva copia. Los plugins guardan tu configuración en la base de datos, así que no hay problema en borrarlos.

Si tu tema no tiene ninguna modificación puedes sustituirlo directamente por una nueva copia. Pero es posible que debas conservar los siguientes archivos:

  • style.css
  • custom.css
  • functions.php
  • carpeta languages de cada tema

Pasos finales para limpiar un sitio WordPress infectado

Con esto ya tienes gran parte del problema resuelto, pero queda la parte más difícil y tediosa 🙁

En el próximo post te enseñaré a identificar los virus y borrarlos de todos aquellos archivos que no hemos podido reemplazar.

Saludos.


Foto: GMF-Productions via photopin cc