El plugin de WordPress WP HTML Mail, instalado en más de 20.000 sitios, es vulnerable a un fallo de alta gravedad que puede llevar a la inyección de código y a la distribución de correos electrónicos de phishing de forma convincente.
'WP HTML Mail' es un plugin utilizado para diseñar correos electrónicos personalizados, notificaciones de formularios de contacto y, en general, mensajes a medida que las plataformas online envían a su audiencia.
El plugin es compatible con WooCommerce, Ninja Forms, BuddyPress y otros. Aunque el número de sitios que lo utilizan no es grande, muchos tienen una gran audiencia, lo que permite que el fallo afecte a un número significativo de usuarios de Internet.
Según un informe del equipo de Inteligencia de Amenazas de Wordfence, un actor no autentificado podría aprovechar el fallo rastreado como "CVE-2022-0218" para modificar la plantilla de correo electrónico para que contenga datos arbitrarios a elección del atacante.
Además, los atacantes pueden utilizar la misma vulnerabilidad para enviar correos electrónicos de phishing a cualquier persona registrada en los sitios comprometidos.
Endpoints API desprotegidos
El problema radica en el registro del plugin de dos rutas REST-API utilizadas para recuperar y actualizar la configuración de las plantillas de correo electrónico.
Estos puntos finales de la API no están adecuadamente protegidos contra el acceso no autorizado, por lo que incluso los usuarios no autenticados pueden llamar y ejecutar las funciones.
Como Wordfence explica en detalle en su informe
El plugin registra el endpoint /themesettings, que llama a la función saveThemeSettings o a la función getThemeSettings dependiendo del método de solicitud.
El punto final REST-API utilizaba la función permission_callback, sin embargo, estaba configurada como __return_true, lo que significaba que no se requería autenticación para ejecutar las funciones.
Por lo tanto, cualquier usuario tenía acceso a ejecutar el punto final REST-API para guardar la configuración del tema del correo electrónico o recuperar la configuración del tema del correo electrónico.
Las dos REST-API no protegidas
Fuente: Wordfence
Aparte de la posibilidad de ataques de phishing, un delincuente también podría inyectar JavaScript malicioso en la plantilla de correo, que se ejecutaría cada vez que el administrador del sitio accediera al editor de correo HTML.
Esto podría abrir el camino para añadir nuevas cuentas de administrador, redirigir a los visitantes del sitio a sitios de phishing, inyectar puertas traseras en los archivos del tema, e incluso tomar el control completo del sitio.
Divulgación y solución
Wordfence descubrió y reveló la vulnerabilidad al desarrollador del plugin el 23 de diciembre de 2021, pero no obtuvo respuesta hasta el 10 de enero de 2022.
La actualización de seguridad que solucionó la vulnerabilidad llegó el 13 de enero de 2022, con el lanzamiento de la versión 3.1.
Por lo tanto, se aconseja a todos los propietarios y administradores de sitios de WordPress que verifiquen que están ejecutando la última versión del plugin 'WP HTML Mail'.