A mediados de julio de 2023, se descubrieron dos vulnerabilidades de seguridad críticas en Benno MailArchiv.
Un problema afecta a una vulnerabilidad XSS crítica (Cross Site Scripting), el otro es una vulnerabilidad XSRF crítica (Cross-Site Request Forgery).

Para las dos vulnerabilidades de seguridad, se asignaron números CVE:

  • CVE-2023-38347 (para la vulnerabilidad XSS)
  • CVE-2023-38348 (para la vulnerabilidad XSRF)

Solución:

Por favor, actualice su instalación de Benno MailArchiv inmediatamente a la última versión! Al instalar los paquetes benno-web (versión 2.10.2) y benno-rest (versión 2.10.1) se actualizarán los dos componentes relevantes. Las dos vulnerabilidades de seguridad críticas están cerradas en ellos.

Nota importante sobre la actualización:

La actualización requiere directamente desde la instalación el uso de HTTPS (es decir, http cifrado con SSL) para la WebApp!
Después de la actualización, un inicio de sesión en la Benno WebApp solo será posible a través de HTTPS.

Todavía existe la posibilidad de utilizar el inicio de sesión para HTTP (no cifrado). Sin embargo, esto debe activarse de forma específica. En esta entrada del Benno Wiki se explica la activación del inicio de sesión HTML en texto plano: https://wiki.benno-mailarchiv.de/doku.php/http_plaintext_access

ATENCIÓN – IMPORTANTE:
La vulnerabilidad XSS solo se cierra efectivamente mediante el uso de HTTPS de manera eficaz!
Si la instalación se configura manualmente para utilizar inicio de sesión HTML sin formato como se describe, la vulnerabilidad XSS permanece activa

Más información sobre las dos vulnerabilidades críticas de seguridad:

En cuanto a CVE-2023-38347 (Brecha XSS):
La aplicación web Benno muestra correos electrónicos en la interfaz web sin filtrar. Antes de mostrar el código HTML, no se examina ni se filtra en busca de código JavaScript malicioso.
Si un correo electrónico archivado contiene código JavaScript malicioso dirigido y se muestra en la aplicación web Benno, el código JavaScript puede acceder al cookie de sesión, leerlo y transmitir la información al atacante. Un atacante podría así, por ejemplo, exfiltrar las credenciales de acceso a Benno MailArchiv del usuario afectado y obtener acceso al archivo de correo (si es accesible a través de Internet). De la misma manera, sería posible cambiar la contraseña del usuario conectado a la aplicación web Benno. (Este vector de ataque está limitado en el tiempo a la duración de la cookie de sesión. Cerrar el navegador web de la víctima invalida la cookie de sesión).
En el paquete benno-web, se cambió el manejo de cookies mediante la extensión del modo httponly y el uso de cookies seguras. Se agregó un token CSRF a los formularios en benno-web. Gracias a esto, el servidor web ahora puede determinar si el envío de un formulario proviene de un usuario legítimo a través del navegador del usuario o no. Con la versión actualizada de benno-web y benno-rest, se cierra esta brecha de seguridad XSS. Antes de mostrar correos electrónicos con formato HTML, se elimina el código JavaScript dentro de benno-rest.

En cuanto a CVE-2023-38348 (Brecha XSRF):
A través de la brecha de seguridad XSRF, un administrador puede ser dirigido a través de un enlace a una página preparada y luego ser inducido a cambiar su contraseña u otras configuraciones - que luego pueden llegar a manos del atacante. Los atacantes tienen la posibilidad, como "hombre en el medio", de obtener credenciales de acceso y otros atributos configurados por el administrador a través de la aplicación web.
En el paquete benno-web, se introdujo el uso de tokens CSRF. Al iniciar sesión, benno-web crea un token CSRF. Este se administra en la sesión y caduca al final de la sesión. benno-web agrega este token CSRF a cada formulario web (como etiqueta oculta) que causa cambios en una base de datos al enviar (por ejemplo, cambiar contraseña, ajustar usuario, etc.). Si un administrador envía un cambio con esto, el token se envía junto y se verifica si coincide con el emitido en la sesión. Los ataques "Man in the middle" se evitarán de manera efectiva en el futuro.
Con la versión actualizada de benno-web y benno-rest, se cierra esta brecha de seguridad.