Se ha identificado una vulnerabilidad crítica de seguridad que afecta a más de 50.000 usuarios de Azure Active Directory. Esta falla expone datos confidenciales de empleados debido a un punto final API no seguro incrustado en un archivo JavaScript.
El hallazgo, realizado por la firma de ciberseguridad CloudSEK, demuestra cómo una configuración incorrecta puede conceder acceso no autorizado a datos de Microsoft Graph, incluyendo información de nivel ejecutivo y estructuras organizativas.
La vulnerabilidad se originó en un punto final API codificado dentro de un paquete JavaScript, ubicado en un subdominio de acceso público de una importante empresa de aviación. Este punto final, accesible sin requisitos de autenticación, emitía automáticamente tokens de API de Microsoft Graph con permisos excesivos, específicamente las capacidades User.Read.All y AccessReview.Read.All.
Estos privilegios elevados normalmente requieren una supervisión administrativa estricta debido a su capacidad para acceder a perfiles de usuario completos y configuraciones críticas de gobierno de identidad.
Los analistas de CloudSEK notaron que el punto final expuesto continuó devolviendo datos para los usuarios recién agregados, lo que indica un riesgo de seguridad continuo que se extendió más allá del descubrimiento inicial.
Los investigadores identificaron la vulnerabilidad utilizando el escáner API de su plataforma BeVigil, que detectó el punto final no seguro durante el monitoreo rutinario de la superficie de ataque de la infraestructura digital de la organización.
El alcance de la información expuesta abarca registros detallados de los empleados, incluidos nombres, puestos de trabajo, detalles de contacto, jerarquías de informes y configuraciones de revisión de acceso.
Entre los datos comprometidos se encontraban registros de altos ejecutivos, incluidos individuos con títulos como “Director Ejecutivo”, “Cofundador y Director” y “Principal de Seguridad Cibernética”, lo que los convertía en objetivos principales para sofisticados ataques de ingeniería social y espionaje corporativo.
El incidente pone de relieve una supervisión de seguridad fundamental en la que servicios backend sensibles quedaron directamente expuestos a través del código del lado del cliente, violando los principios básicos de la arquitectura de aplicaciones seguras.
La mala configuración demuestra cómo las aplicaciones web modernas pueden crear inadvertidamente importantes vectores de ataque cuando no se implementan los controles de seguridad adecuados.
Detalles de la vulnerabilidad
La vulnerabilidad principal surgió de una gestión inadecuada de tokens dentro de la arquitectura front-end de la aplicación.
El archivo JavaScript contenía lógica integrada que generaba automáticamente tokens de acceso de Microsoft Graph con amplios permisos, evitando efectivamente los controles de seguridad integrados de Azure AD. El punto final expuesto utilizó los siguientes alcances de permisos:
Esta configuración permitió que cualquier individuo con acceso al punto final consultara las API de Microsoft Graph y obtuviera acceso a la totalidad de los datos organizacionales.
Esta vulnerabilidad ilustra cómo la exposición de los mecanismos de autenticación del lado del cliente puede eludir las políticas de seguridad empresariales, abriendo caminos no autorizados hacia servicios en la nube que deberían estar protegidos.
El análisis de CloudSEK también reveló que la generación de tokens se realizaba sin una validación o limitación de velocidad adecuada. Esto podría haber permitido a atacantes potenciales extraer sistemáticamente grandes volúmenes de datos corporativos sensibles.