Los investigadores de seguridad han publicado detalles técnicos y un exploit de prueba de concepto (PoC) para una vulnerabilidad crítica parcheada la semana pasada en FortiClient Enterprise Management Server (FortiClient EMS) de Fortinet, una solución de gestión de seguridad de endpoints. La vulnerabilidad, rastreada como CVE-2023-48788, fue reportada a Fortinet como de día cero por el Centro Nacional de Seguridad Cibernética (NCSC) del Reino Unido y fue explotada activamente en el momento del parche, pero probablemente en ataques muy dirigidos. . La disponibilidad del nuevo PoC, aunque no esté armado, podría permitir una explotación más amplia y una adopción más fácil por parte de más grupos de atacantes.
La falla es el resultado de una desinfección inadecuada de elementos en un comando SQL, que podría explotarse en un escenario de inyección SQL para ejecutar código o comandos no autorizados en FortiClient EMS. Se recomienda a los clientes actualizar a la versión 7.0.11 o superior para la serie 7.0.x y a la versión 7.2.3 o superior para la serie 7.2.x.
Vulnerabilidad de Fortinet trivial de explotar
FortiClient EMS es el componente del servidor central que se utiliza para administrar puntos finales que ejecutan FortiClient. Según los investigadores de la empresa de pruebas de penetración Horizon3.ai, que reconstruyeron la vulnerabilidad, se encuentra en un componente llamado FCTDas.exe, o Data Access Server, que se comunica con la base de datos de Microsoft SQL Server para almacenar la información recibida de los puntos finales.
Los puntos finales que tienen FortiClient instalado se comunican con un componente del EMS llamado FmcDaemon.exe a través del puerto 8013 utilizando un protocolo personalizado basado en texto que luego se cifra con TLS para protección. FmcDaemon.exe luego pasa información a FCTDas.exe en forma de consultas SQL que luego se ejecutan en la base de datos.
Los investigadores lograron crear un script de Python para interactuar con FmcDaemon.exe y enviar un mensaje simple para actualizar el FCTUID seguido de una carga útil de inyección SQL para activar una suspensión de 10 segundos. Luego observaron que la carga útil se pasó a FCTDas.exe, confirmando así la vulnerabilidad.
“Para convertir esta vulnerabilidad de inyección SQL en ejecución remota de código utilizamos la funcionalidad xp_cmdshell incorporada de Microsoft SQL Server”, dijeron los investigadores en su artículo técnico. “Inicialmente, la base de datos no estaba configurada para ejecutar el comando xp_cmdshell. Sin embargo, se habilitó trivialmente con algunas otras declaraciones SQL”.
Los investigadores dejaron intencionalmente la parte de ejecución del código xp_cmdshell fuera del exploit PoC, por lo que no se puede abusar de él directamente sin modificarlo. Sin embargo, la técnica xp_cmdshell es bien conocida y se ha utilizado antes para atacar bases de datos de Microsoft SQL Server, lo que significa que no es difícil implementar esa parte.
Las fallas de Fortinet son atractivas para los atacantes
En febrero, Fortinet parchó otra vulnerabilidad crítica de ejecución remota de código en el servicio SSL VPN del sistema operativo FortiOS utilizado en sus dispositivos. Esa vulnerabilidad, rastreada como CVE-2024-21762, también venía con una advertencia de que era potencialmente explotada en estado salvaje. La compañía también advirtió que los grupos de ciberespionaje chinos explotaron las vulnerabilidades de FortiOS del día N en el pasado para apuntar a organizaciones de infraestructura crítica.
Fuente Original CSO Online