El 29 de marzo de 2022, el equipo de Wordfence Threat Intelligence inició el proceso de divulgación de una vulnerabilidad crítica en el complemento de Elementor que permitía a cualquier usuario autenticado cargar código PHP arbitrario. Elementor es uno de los complementos de WordPress más populares y está instalado en más de 5 millones de sitios web.
Enviamos nuestra divulgación a la dirección de correo electrónico de contacto de seguridad oficial de Elementor el 29 de marzo y le dimos seguimiento el 5 de abril de 2022. Como no recibimos una respuesta antes del 11 de abril de 2022, enviamos la divulgación al equipo de complementos de WordPress. Una versión parcheada del complemento, 3.6.3, se lanzó al día siguiente, el 12 de abril de 2022.
Wordfence Premium , Wordfence Care y Wordfence Response recibieron una regla de firewall que los protege contra este problema el 29 de marzo de 2022. Los sitios que aún ejecutan la versión gratuita de Wordfence recibirán la misma protección 30 días después, el 28 de abril de 2022.
Descripción: control de acceso insuficiente que lleva a la ejecución remota del código del suscriptor+
Complemento afectado: Elementor
Complemento Slug: elementor
Desarrollador de complementos: Elementor
Versiones afectadas: 3.6.0 – 3.6.2
ID CVE: CVE-2022-1329
Puntaje CVSS : 9.9 (crítico)
Vector CVSS: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Investigador/es : Ramuel Gall
Versión totalmente parcheada : 3.6.3
El complemento de Elementor para WordPress introdujo un módulo de incorporación en la versión 3.6.0, diseñado para simplificar la configuración inicial del complemento. El módulo utiliza un método inusual para registrar acciones AJAX, agregando un admin_init
oyente en su constructor que primero verifica si una solicitud fue o no al punto final AJAX y contiene un nonce válido antes de llamar al maybe_handle_ajax
función.
433 434 435 436 437 438 439 440 441 | add_action( 'admin_init', function() { if ( wp_doing_ajax() && isset( $_POST['action'] ) && isset( $_POST['_nonce'] ) && wp_verify_nonce( $_POST['_nonce'], Ajax::NONCE_KEY ) ) { $this->maybe_handle_ajax(); } } ); |
Desafortunadamente, no se utilizaron controles de capacidad en las versiones vulnerables. Hay varias maneras para que un usuario autenticado obtenga la Ajax::NONCE_KEY
, pero una de las formas más sencillas es ver la fuente del panel de administración como un usuario que ha iniciado sesión, ya que está presente para todos los usuarios autenticados, incluso para los usuarios de nivel de suscripción.
Esto significa que cualquier usuario que haya iniciado sesión podría usar cualquiera de las funciones de incorporación. Además, un la atacante no autenticado con acceso a Ajax::NONCE_KEY
podría usar cualquiera de las funciones llamadas desde maybe_handle_ajax
, aunque esto probablemente requeriría una vulnerabilidad separada.
La función con mayor impacto fue la upload_and_install_pro
función. Un atacante podría crear un complemento zip falso malicioso “Elementor Pro” y usar esta función para instalarlo. Se ejecutaría cualquier código presente en el complemento falso, que podría usarse para controlar el sitio o acceder a recursos adicionales en el servidor.
Además de esta funcionalidad, un atacante menos sofisticado podría simplemente desfigurar el sitio usando el maybe_update_site_name
, maybe_upload_logo_image
, y maybe_update_site_logo
funciones para cambiar el nombre del sitio y el logotipo.
Cronología
29 de marzo de 2022 : finalizamos nuestra investigación e implementamos una regla de firewall para proteger a los Wordfence Premium , Wordfence Care y Wordfence Response . Enviamos nuestra divulgación completa al contacto de seguridad oficial del desarrollador del complemento.
5 de abril de 2022 : hacemos un seguimiento con el contacto de seguridad del desarrollador del complemento, ya que aún no hemos recibido una respuesta.
11 de abril de 2022 : enviamos nuestra divulgación completa al equipo de complementos de WordPress.
12 de abril de 2022 : se lanza una versión parcheada de Elementor.
28 de abril de 2022 : la regla de firewall está disponible para los usuarios gratuitos de Wordfence.
Conclusión
En la publicación de hoy, cubrimos una vulnerabilidad crítica que permite que cualquier usuario autenticado cargue y ejecute código malicioso en un sitio que ejecuta una versión vulnerable del complemento Elementor. Si su sitio está utilizando el complemento Elementor, le recomendamos que lo actualice de inmediato. La buena noticia es que la vulnerabilidad no está presente en versiones anteriores a la 3.6.0 y fue parcheada con éxito en la 3.6.3.
Fuente: https://www.wordfence.com/blog/2022/04/elementor-critical-remote-code-execution-vulnerability/