SyncJacking: una vulnerabilidad de ‘coincidencia exacta’ de identidades que permite la toma de control de cuentas de Azure AD

Semperis ha descubierto una vulnerabilidad en el proceso de aprovisionamiento de un objeto de Active Directory local a Azure AD en Microsoft Azure Active Directory Connect (Azure AD Connect). La vulnerabilidad, denominado SyncJacking, puede permitir a los ciberatacantes obtener la toma de control de cuentas de Azure AD. Semperis la ha descubierto mientras profundizaba en una investigación publicada en agosto que describe el abuso de coincidencias parciales (también conocida como ‘SMTP matching’).

Foto: Luca Bravo @ Unsplash.com

Esta vulnerabilidad de SyncJacking significa que un atacante con ciertos privilegios podría abusar de la sincronización de coincidencias exactas en Azure AD Connect para hacerse con el control por completo de cualquier cuenta de Azure AD sincronizada, incluido el Administrador global activo. Azure AD Connect es una aplicación de Microsoft que soporta la identidad híbrida mediante la sincronización de los objetos AD on-prem con los objetos Azure AD. Es importante entender por qué los posibles ciberatacantes podrían explotar este método dado que:

  • El uso de coincidencias exactas para facilitar la adquisición de cuentas de Azure AD no deja rastro en los registros de AD locales y un rastro mínimo en los registros de Azure AD.
  • Un ataque solo requiere dos permisos en las cuentas de destino para hacerse con el control por completo de cualquier cuenta sincronizada con cualquier función.
  • Un atacante que tenga privilegios relativamente altos en AD podría secuestrar Azure AD mediante el control ilícito de cualquier cuenta sincronizada con una asignación activa/elegible.

Dos tipos de abuso de SyncJack

Semperis ha detectado que hay dos posibles vectores de ataque:

  • Delegación de usuarios: Si a un usuario o grupo se le ha delegado el control para gestionar usuarios en una o más unidades organizativas (OU) con usuarios sincronizados y no sincronizados, entonces ese usuario o grupo tiene el control total sobre estos objetos y puede secuestrar cualquiera de ellos, incluso, en teoría, convertirse en un Administrador Global.
  • Operadores de cuentas: Cualquier usuario del grupo de Operadores de Cuentas puede gestionar todas las cuentas y tiene privilegios de creación de cuentas. Por lo tanto, cualquier Operador de Cuentas puede secuestrar a cualquier usuario sincronizado.

Cómo detectar el abuso de SyncJack

Se puede suponer (aunque no de forma definitiva) que se ha producido un ataque de este tipo cuando se producen dos eventos de registro de forma consecutiva en Azure AD: “Cambiar contraseña de usuario” seguido de “Actualizar usuario” con un DisplayName modificado y un objetivo que usa el mismo UPN.

Estos hallazgos se informaron de inmediato al Centro de Respuestas de Seguridad de Microsoft (MSRC), que actualizó las Directrices de protección para proporcionar defensas más específicas contra el abuso de coincidencias exactas. Aunque MSRC respondió rápidamente y actualizó las pautas de endurecimiento, las pruebas adicionales muestran que el ataque puede tener éxito incluso después de implementar estas medidas. MSRC dice que la única forma de mitigar un ataque de este tipo es imponer la MFA a todos los usuarios sincronizados. Por lo tanto, Semperis recomienda encarecidamente tomar medidas de seguridad adicionales para evitar el uso indebido y la posible adquisición de control sobre las cuentas de Azure AD.

Para una mayor protección, Semperis Directory Services Protector (DSP) recopila cambios de Azure AD y datos de AD locales y utiliza estos datos para detectar intentos de aprovechar esta vulnerabilidad. A pesar de los mínimos rastros que deja el ataque, las características específicas de DSP permiten la detección.