Alerta de la comunidad Vulnerabilidad XSS en Elementor Addons(CVE202412120)

Cross Site Scripting (XSS) en el plugin Royal Elementor Addons de WordPress






Critical Guidance — CVE-2024-12120: Authenticated (Contributor) Stored XSS in Royal Elementor Addons (<= 1.7.1017)


Nombre del plugin Royal Elementor Addons
Tipo de vulnerabilidad XSS
Número CVE CVE-2024-12120
Urgencia Medio
Fecha de publicación de CVE 2026-02-03
URL de origen CVE-2024-12120

Guía Crítica — CVE-2024-12120: XSS almacenado autenticado (Contribuyente) en Royal Elementor Addons (<= 1.7.1017)

Autor: Experto en seguridad de Hong Kong

Fecha: 2026-02-03

Resumen: Se divulgó una vulnerabilidad de Cross-Site Scripting (XSS) almacenada (CVE-2024-12120) en el plugin Royal Elementor Addons & Templates que afecta a las versiones ≤ 1.7.1017. Un usuario autenticado con privilegios de nivel Contributor puede inyectar JavaScript almacenado que puede ejecutarse en el navegador de usuarios o visitantes del sitio con privilegios más altos. Esta publicación explica los detalles técnicos, el riesgo en el mundo real, los pasos de detección y las estrategias de mitigación prácticas que puedes aplicar de inmediato desde la perspectiva de un profesional de seguridad de Hong Kong.

TL;DR — Datos rápidos

  • Vulnerabilidad: Cross-Site Scripting (XSS) almacenado
  • CVE: CVE-2024-12120
  • Software afectado: plugin Royal Elementor Addons & Templates ≤ 1.7.1017
  • Corregido en: 1.7.1018 (actualiza de inmediato)
  • Privilegio requerido del atacante: Contribuyente autenticado (o superior, dependiendo de la configuración del sitio)
  • Vector de explotación: El atacante almacena la carga útil en campo(s) controlado(s) por el plugin; el script se ejecuta cuando los usuarios o visitantes privilegiados ven el contenido almacenado
  • Riesgo: Medio (CVSS ~6.5 reportado) — el atacante puede ejecutar JavaScript del lado del navegador causando robo de sesión, inyección de contenido o persistencia
  • Mitigaciones inmediatas: Actualiza el plugin, elimina/limita cuentas de Contribuyente, aplica parches virtuales a nivel de inspección de solicitudes, escanea en busca de contenido inyectado

Por qué esto importa (impacto en el mundo real)

El XSS almacenado está entre las vulnerabilidades del lado del cliente más peligrosas. Cuando JavaScript arbitrario se guarda en la base de datos y luego se ejecuta en el navegador de otro usuario, los atacantes pueden:

  • Robar cookies o tokens de sesión de administradores e intentar tomar el control total del sitio.
  • Realizar acciones en el navegador en nombre de un usuario privilegiado (cambiar configuraciones, instalar plugins, publicar contenido).
  • Inyectar contenido malicioso persistente (redirecciones, anuncios no deseados o puertas traseras basadas en DOM).
  • Crear persistencia que sobrevive a escaneos de archivos, ya que las cargas útiles viven en la base de datos.
  • Combinar con otras debilidades para escalar el impacto o exfiltrar datos.

Debido a que este error puede ser activado por una cuenta de nivel Contribuyente — un rol frecuentemente utilizado para autores y presentadores de contenido — los sitios que aceptan contenido enviado por usuarios están particularmente en riesgo.

Visión técnica: cómo funciona la vulnerabilidad

Este es un clásico XSS almacenado causado por una validación de entrada insuficiente y falta de escape de salida en la interfaz de usuario del plugin o lógica de renderizado. En términos prácticos:

  1. Un usuario autenticado con privilegios de Colaborador crea o actualiza un campo de contenido expuesto por el plugin (descripción de la plantilla, parámetro de widget, atributo de shortcode o postmeta gestionado por el plugin).
  2. El plugin acepta y guarda la entrada sin la debida sanitización.
  3. Más tarde, cuando un administrador/editor o visitante ve una página o pantalla de administración que renderiza el campo almacenado, el plugin muestra los datos sin codificación, permitiendo la inserción de