Un día nos podemos levantar y encontrarnos con la desagradable noticia de que nuestro sitio ha sido infectado. Esto puede ocurrir por multitud de factores: vulnerabilidad detectada en el core de WordPress o en algún tema o plugin, el uso de un proveedor de hosting malo, contraseñas débiles, permisos de archivos y/o directorios desaconsejados, etc…
Hay estudios que indican que el 41% de los ataques vienen por fallos de seguridad relativos al hosting contratado. Muchas veces escogemos el hosting por el precio y no pensamos que el día de mañana nos puede traer problemas. De ahí el artículo que escribí hace unos días sobre la importancia de escoger un buen hosting.
Un 29% de los ataques vienen por vulnerabilidades encontradas en temas y un 22% en plugins. El 8% restante es por el uso de contraseñas débiles, que a pesar de parecer una obviedad, la gente sigue utilizando.
Ahora al turrón: los ataques pueden ser de diversos tipos: que redireccionen tu sitio a otras páginas para vender productos, que inserten pop-ups de publicidad, que hayan logrado crear usuarios de perfil administrador, o incluso puede darse el caso de que google bloquee el acceso a tu página por completo.
Paso 1: Escanea tu ordenador en busca de virus y malware
Lo primero que debemos hacer es pasar el antivirus a tu ordenador (o a los ordenadores donde nos hayamos podido conectar a nuestra web o a nuestro servidor vía FTP). Pásale después un anti-malware para asegurar que nuestro equipo está limpio. Hay virus que pueden capturar las conexiones FTP para utilizarlas con fines maliciosos.
Paso 2: Cambia las contraseñas
Si debido a un ataque, alguien se ha hecho con tus contraseñas…debes cambiarlas obligatoriamente. Cambia las claves de acceso al panel de control de tu hosting, al usuario de acceso al back-end de WordPress y la contraseña del FTP. Ni que decir tiene que lo aconsejable es utilizar contraseñas seguras, no se te ocurra poner claves de tipo: admin, 1234, asdf, qwerty, etc… Éstas deben ser de al menos 8 caracteres y que incluyan combinaciones de mayúsculas, minúsculas, números, letras, caracteres especiales (¡, %, #, &, <, $, €, etc…)
Paso 3: Realizar un backup completo ficheros y base de datos
Vamos a descargarnos todos los ficheros de nuestro sitio por FTP, así como la base de datos a nuestro equipo local. Guardaremos esta copia infectada por si las moscas.
Si hemos sido precavidos y tenemos copias de seguridad en nuestro hosting, es el momento de solicitar a nuestro proveedor que nos restaure la web (ficheros + base de datos) al día anterior del ataque. En caso contrario => vamos al paso 4.
Paso 4: Detección de la amenaza
Como hemos hecho copia en nuestro equipo, configuramos nuestra web en localhost e instalamos los plugins WordFence e iThemes Security.
El primero realizará un escaneo de nuestra instalación de WordPress, comparando archivo por archivo tu sitio con los archivos originales del repositorio de WordPress. En caso de encontrar diferencias, te avisará del archivo que ha sido modificado por un atacante malintencionado.
Con iThemes Security podremos configurar varios parámetros de seguridad en nuestro sitio, y pasar un scan que nos dirá si tenemos inyección de código malicioso, scripts o iframes en algún fichero de nuestra web. Si tenemos acceso a la web, es recomendable pasar un antivirus online a nuestro sitio como VirusTotal, y ver si podemos obtener información sobre la infección.
También deberemos repasar en busca de código malintencionado el fichero .htaccess, donde los atacantes suelen escribir reglas de redireccionamiento, etc…
Paso 5: Instalar una versión limpia de WordPress
Si con alguno de los plugins mencionados anteriormente hemos detectado modificaciones sobre el core de WordPress, lo más sensato es descargarse del repositorio oficial la misma versión con la que venías trabajando (debería ser la última, ya que uno de los factores de seguridad más importante es tener todos tus plugins, temas y WordPress actualizados a la última versión).
Si hemos detectado código malicioso en algún plugin o en el mismo tema, deberemos hacer lo mismo, descargarnos la versión correspondiente y sustituir el plugin infectado.
Paso 6: Eliminar administradores
Vamos a entrar en el panel de administración e ir a la sección de usuarios. Haremos una búsqueda entre los usuarios administradores. Si ves algún usuario que no conoces como administrador, procede a eliminarlo.
Paso 7: Buscar código malicioso en base de datos
Abre la base de datos con un editor de texto y busca las siguientes cadenas: “<iframe”, “<noscript”, “display:”, “<script”.
Si encuentras coincidencias, descarta primero si es parte del contenido que tu has contribuido a tu web (podrías tener un iframe de google maps por ejemplo y no sería código malicioso), o si se trata de código que ejecuta acciones maliciosas. Si encuentras algo raro elimínalo.
Paso 8: Restaura tu sitio
Una vez realizados los pasos anteriores, elimina por FTP el sitio infectado y sube la copia limpia que tienes en local, así como la base de datos. Probaremos que todo funciona bien, e incluso es recomendable volver a pasar los scaneos de WordFence e iThemes Security para asegurarnos que todo está correctamente.
Paso 9: Enviar solicitud de reconsideración
En ciertos casos, algunos antivirus o el mismísimo google pueden bloquear el acceso a tu página ya que detectaron una amenaza. Ahora tendrás que ir uno por uno, y enviar una solicitud de reconsideración para que vuelvan a escanear tu sitio y te quiten el bloqueo.
Para evitar que vuelva a ocurrir…
Si has sufrido un ataque y te has visto en esta situación, ahora entenderás la importancia de la prevención para estos casos. Deja instalados los plugins recomendados anteriormente y mantén siempre actualizado tu WordPress, así como los plugins y temas. Trata de seguir y aplicar estas recomendaciones de seguridad y siempre ten programadas copias de seguridad periódicas.
Si estas recomendaciones y acciones superan tus conocimientos, contrata un profesional para que restaure tu sitio y lo proteja para futuros ataques.