XSS persistente en WordPress Statistics Plugin

XSS persistente en WordPress Statistics Plugin

Cross-Site Scripting (XSS)

En diciembre de 2024, Fastly confirmó que la vulnerabilidad CVE-2024-2194 en el plugin WP Statistics (versiones anteriores a la 14.5) estaba siendo explotada en entornos de producción. Los atacantes lograron inyectar código JavaScript malicioso mediante el parámetro utm_id, almacenándolo directamente en la base de datos del plugin. Cada vez que un administrador o visitante accedía al panel de estadísticas, el navegador ejecutaba el payload, extendiendo silenciosamente la infección y otorgando a los atacantes control completo sobre la sección de informes.

Modo de ataque y alcance

El exploit consistió en enviar solicitudes al endpoint de recopilación de métricas con un valor de utm_id que incluía etiquetas <script> diseñadas para crear cuentas de administrador ocultas y descargar backdoors en los directorios de temas y plugins. Al cargarse el dashboard, el código malicioso ejecutaba funciones de la API interna de WordPress que otorgaban privilegios elevados al atacante y le permitían modificar archivos PHP en el servidor. En pocas semanas, más de 10 000 sitios WordPress, desde blogs personales hasta grandes e-commerce, mostraron evidencias de actividad no autorizada y tráfico filtrado hacia servidores de comando y control.

Impacto en operaciones y finanzas

Los administradores afectados observaron anuncios no deseados insertados en sus páginas, pérdidas de ingresos por clics fraudulentos y una completa pérdida de control sobre las cuentas con privilegios elevados. Varios portales corporativos vieron reducida su reputación tras hallazgos de backdoors en plugins críticos, lo que derivó en demandas de clientes y gastos en auditorías externas. En total, los costes de limpieza de malware, restauración de copias de seguridad y refuerzo de seguridad se estimaron en cerca de 500 000 USD para los sitios más grandes, sin contar el impacto reputacional a largo plazo.

Recomendaciones y respuesta institucional

Fastly y el equipo de seguridad de WordPress recomendaron actualizar inmediatamente WP Statistics a la versión 14.5.1 o superior, que corrige la sanitización del parámetro utm_id y aplica escaping contextual en todas las entradas de usuario. Además, instaron a configurar políticas estrictas de Content Security Policy (CSP) para bloquear la ejecución de scripts externos y a realizar auditorías periódicas de plugins con herramientas de escaneo estático. Finalmente, se ha reforzado la concienciación entre desarrolladores para que implementen siempre validación de datos y escaping tanto en el servidor como en el cliente.