El día después de un ataque a WordPress

Actualmente WordPress es uno de los CMS más utilizados, nació como una plataforma para blogs, y poco a poco se ha convertido en un CMS extremadamente potente y muy popular en los últimos años. Miles de personas y empresas se dedican a crear nuevas funciones, temas, servicios, etc, que hacen cada día más atractiva a ésta plataforma. Esta popularidad también ha hecho que sea un objetivo atractivo para lanzar ataques a gran escala.

Una de las mayores fortalezas de WordPress es su firme compromiso con la seguridad de la plataforma. Desde un principio han previsto y simplificado la actualización de todas sus partes con cierta seguridad y sin necesitar de conocimientos técnicos.
Una instalación media de WordPress, actualizada al día, con plugins contrastados y un tema correctamente programado es un entorno generalmente seguro.

Actualiza de forma rutinaria tu instalación de WordPress, todos los plugins y el tema.
Por defecto, las actualizaciones automáticas deben estar activadas

Algunos de los tipos de ataques más comunes son:

  • Ataques a instalaciones de WorpPress obsoletas
  • Ataques por vulnerabilidades en plugins
  • Ataques de fuerza bruta

Pero, ¿Qué puedo hacer después de un ataque?

Los pasos básicos son los propios ante cualquier infección (Contención, análisis, limpieza):

  1. Contención. En primer lugar hemos de detener el ataque y evitar cualquier mal mayor. Dependiendo del alcance del ataque podemos comenzar protegiendo el acceso público al proyecto. Podemos añadir una protección mediante htpasswd (en el caso de Apache) al directorio raíz de tu site.

    Si contamos con panel de control, seguramente podamos hacerlo desde él. En el caso de Plesk: elige la suscripción, pestaña «Sitio web y dominios», desplegando las opciones del dominio, encontramos «Directorios protegidos con contraseña» como se muestra en la siguiente imagen:

    Con esto tus ficheros no podrán ser ejecutados sin las credenciales de la protección.

  2. Análisis. Revisar minuciosamente los ficheros logs en busca de patrones sospechosos y el flujo del ataque. Comprueba también los ficheros que hayan podido ser modificados en busca de contenido malicioso. Si tienes acceso a CLI, estos comandos pueden ser de ayuda para buscar algunas cadenas sospechosas:
    grep -r --include=*.php -PHn "(eval\(.*\);)"
    find . -type f -name '*.php' | xargs egrep -i "preg_replace *\((['|\"])(.).*\2[a-z]*e[^\1]*\1 *," --color
    find . -type f -name '*.php' | xargs grep -l "eval *(" --color
    find . -type f -name '*.php' | xargs grep -l "base64_decode *(" --color
    find . -type f -name '*.php' | xargs grep -l "gzinflate *(" --color
    

  3. Limpieza. Dada la simplicidad estructural de WordPress, en el caso de que el alcance de la infección haya sido importante o hayamos determinado que el sitio ha quedado comprometido, solemos recomendar proceder a una reinstalación limpia. Sigue el esta pequeña guía para limpiar los ficheros de WordPress: Manual para reinstalar WordPress sin perder contenido

Artículos relacionados