El equipo de Wordfence Threat Intelligence reveló a finales de febrero un conjunto de vulnerabilidades de Cross-Site Scripting almacenadas en Elementor, un complemento de WordPress que «ahora está instalado y utilizado activamente en más de 7 millones de sitios web».
Estas vulnerabilidades permitían a cualquier usuario que pudiera acceder al editor, incluidos los colaboradores, agregar JavaScript a las publicaciones. Este JavaScript se ejecutaría si la publicación fuera vista, editada o vista previa por cualquier otro usuario del sitio. Ahora desde Elementor han lanzado una nueva versión que supuestamente pone punto y final a estas vulnerabilidades.
Aunque Elementor el 2 de marzo puso ya a disposición de los usuarios un parche para solucionar esta vulnerabilidad, igualmente recomiendan actualizar al menos a la versión 3.1.4 , la última disponible en el en el momento de escribir este artículo, ya que contiene soluciones adicionales para el problema.
Versión completamente parcheada: 3.1.4
Este complemento, en principio, permite a los creadores de contenido la capacidad de diseñar visualmente sitios web utilizando «elementos» que se pueden agregar a cualquier ubicación en la página que se está creando.
Muchos de estos elementos ofrecen la opción de establecer una etiqueta HTML para el contenido. Por ejemplo, el elemento «Encabezado» se puede configurar para usar etiquetas H1, H2, H3, etc. para aplicar diferentes tamaños de encabezado a través del header_sizeparámetro. Desafortunadamente, para seis de estos elementos, las etiquetas HTML no se validaron en el lado del servidor, por lo que era posible que cualquier usuario que pudiera acceder al editor de Elementor, incluidos los contribuyentes, usara esta opción para agregar JavaScript ejecutable a una publicación o página a través de una solicitud elaborada.

Dado que las publicaciones creadas por contribuyentes suelen ser revisadas por editores o administradores antes de su publicación, cualquier JavaScript agregado a una de estas publicaciones se ejecutará en el navegador del revisor. Si un administrador revisó una publicación que contiene JavaScript malicioso, su sesión autenticada con privilegios de alto nivel podría usarse para crear un nuevo administrador malicioso o para agregar una puerta trasera al sitio. Un ataque a esta vulnerabilidad podría llevar a la toma de control del sitio.
Dependiendo del elemento, el JavaScript ejecutable podría agregarse de varias formas.
Por ejemplo, el elemento «Columna», uno de los componentes más básicos de Elementor, acepta un parámetro html_tag . Este parámetro podría configurarse como un script en línea, un script con una fuente remota o incluso lo podrían atacar usando XSS basado en atributos.
Los elementos Accordion, Icon Box e Image Box también eran vulnerables a este tipo de ataque, aunque los nombres de los parámetros vulnerables variaban según el componente.
Estas vulnerabilidades se han parcheado en la versión 3.1.4, por lo que es muy recomendable que los usuarios de Elementor actualicen a la última versión disponible, la 3.1.4.