Az - Device Registration
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Cuando un dispositivo se une a AzureAD, se crea un nuevo objeto en AzureAD.
Al registrar un dispositivo, se le pide al usuario que inicie sesión con su cuenta (solicitando MFA si es necesario), luego solicita tokens para el servicio de registro de dispositivos y luego pide una confirmación final.
Luego, se generan dos pares de claves RSA en el dispositivo: La clave del dispositivo (clave pública) que se envía a AzureAD y la clave de transporte (clave privada) que se almacena en TPM si es posible.
Luego, se genera el objeto en AzureAD (no en Intune) y AzureAD devuelve al dispositivo un certificado firmado por él. Puedes verificar que el dispositivo está unido a AzureAD y la información sobre el certificado (como si está protegido por TPM).
Después del registro del dispositivo, se solicita un Primary Refresh Token por el módulo LSASS CloudAP y se entrega al dispositivo. Con el PRT también se entrega la clave de sesión cifrada para que solo el dispositivo pueda descifrarla (usando la clave pública de la clave de transporte) y es necesaria para usar el PRT.
Para más información sobre qué es un PRT, consulta:
Az - Primary Refresh Token (PRT)El TPM protege contra la extracción de claves de un dispositivo apagado (si está protegido por PIN) y contra la extracción del material privado de la capa del sistema operativo. Pero no protege contra el sniffing de la conexión física entre el TPM y la CPU o el uso del material criptográfico en el TPM mientras el sistema está en funcionamiento desde un proceso con derechos de SYSTEM.
Si revisas la siguiente página, verás que robar el PRT puede ser utilizado para acceder como el usuario, lo cual es excelente porque el PRT se encuentra en los dispositivos, por lo que puede ser robado de ellos (o si no es robado, abusado para generar nuevas claves de firma):
Az - Pass the PRTSería posible que un atacante solicitara un token para el servicio de registro de dispositivos de Microsoft desde el dispositivo comprometido y lo registrara:
Lo que te dará un certificado que puedes usar para solicitar PRTs en el futuro. Por lo tanto, manteniendo la persistencia y eludiendo MFA porque el token PRT original utilizado para registrar el nuevo dispositivo ya tenía permisos de MFA otorgados.
Ten en cuenta que para realizar este ataque necesitarás permisos para registrar nuevos dispositivos. Además, registrar un dispositivo no significa que el dispositivo será autorizado para inscribirse en Intune.
Este ataque fue solucionado en septiembre de 2021, ya que ya no puedes registrar nuevos dispositivos utilizando tokens SSO. Sin embargo, aún es posible registrar dispositivos de manera legítima (teniendo nombre de usuario, contraseña y MFA si es necesario). Consulta: roadtx.
Era posible solicitar un ticket de dispositivo, sobrescribir el actual del dispositivo y durante el flujo robar el PRT (por lo que no es necesario robarlo del TPM. Para más información consulta esta charla.
Sin embargo, esto fue solucionado.
Consulta las diapositivas originales aquí
Resumen del ataque:
Es posible sobrescribir la clave WHFB registrada de un dispositivo a través de SSO
Elude la protección TPM ya que la clave es capturada durante la generación de la nueva clave
Esto también proporciona persistencia
Los usuarios pueden modificar su propia propiedad searchableDeviceKey a través del Azure AD Graph, sin embargo, el atacante necesita tener un dispositivo en el inquilino (registrado sobre la marcha o habiendo robado el certificado + clave de un dispositivo legítimo) y un token de acceso válido para el AAD Graph.
Luego, es posible generar una nueva clave con:
y luego PATCH la información del searchableDeviceKey:
Es posible obtener un token de acceso de un usuario a través de phishing de código de dispositivo y abusar de los pasos anteriores para robar su acceso. Para más información, consulta:
Az - Phishing Primary Refresh Token (Microsoft Entra)Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)