Az - Enregistrement dâappareil
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
Informations de base
Quand un appareil rejoint AzureAD, un nouvel objet est créé dans AzureAD.
Lors de lâenregistrement dâun appareil, lâuser is asked to login with his account (demande de MFA si nĂ©cessaire), puis il demande des jetons pour le service dâenregistrement dâappareil et demande ensuite une confirmation finale.
Ensuite, deux RSA keypairs sont gĂ©nĂ©rĂ©s sur lâappareil : la device key (public key) qui est envoyĂ©e Ă AzureAD et la transport key (private key) qui est stockĂ©e dans le TPM si possible.
Ensuite, lâobject est gĂ©nĂ©rĂ© dans AzureAD (pas dans Intune) et AzureAD renvoie Ă lâappareil un certificate signĂ© par celui-ci. Vous pouvez vĂ©rifier que lâdevice is AzureAD joined et obtenir des informations sur le certificate (par exemple sâil est protĂ©gĂ© par TPM).:
dsregcmd /status
AprĂšs lâenregistrement de lâappareil, un Primary Refresh Token est demandĂ© par le module LSASS CloudAP et remis Ă lâappareil. Avec le PRT est aussi fournie la clĂ© de session chiffrĂ©e de sorte que seul lâappareil puisse la dĂ©chiffrer (en utilisant la clĂ© publique de la transport key) et elle est nĂ©cessaire pour utiliser le PRT.
Pour plus dâinformations sur ce quâest un PRT, consultez :
Az - Primary Refresh Token (PRT)
TPM - Trusted Platform Module
Le TPM protĂšge contre lâextraction de clĂ©s depuis un appareil Ă©teint (si protĂ©gĂ© par PIN) et contre lâextraction du matĂ©riel privĂ© depuis la couche OS.
Mais il ne protĂšge pas contre le sniffing de la connexion physique entre le TPM et le CPU ou contre lâutilisation du matĂ©riel cryptographique du TPM pendant que le systĂšme est en fonctionnement depuis un processus disposant des droits SYSTEM.
Si vous consultez la page suivante, vous verrez que stealing the PRT peut ĂȘtre utilisĂ© pour obtenir lâaccĂšs comme lâutilisateur, ce qui est avantageux car le PRT est stockĂ© sur les appareils, donc il peut leur ĂȘtre volĂ© (ou, sâil nâest pas volĂ©, abusĂ© pour gĂ©nĂ©rer de nouvelles clĂ©s de signature) :
Az - Primary Refresh Token (PRT)
Enregistrement dâun appareil avec des tokens SSO
Il serait possible pour un attaquant de demander un token pour le service dâenregistrement dâappareils Microsoft depuis lâappareil compromis et de lâenregistrer :
# Initialize SSO flow
roadrecon auth prt-init
.\ROADtoken.exe <nonce>
# Request token with PRT with PRT cookie
roadrecon auth -r 01cb2876-7ebd-4aa4-9cc9-d28bd4d359a9 --prt-cookie <cookie>
# Custom pyhton script to register a device (check roadtx)
registerdevice.py
Ce qui vous donnera un certificat que vous pouvez utiliser pour demander des PRTs Ă lâavenir. Permettant ainsi de maintenir la persistance et de contourner la MFA parce que le PRT original utilisĂ© pour enregistrer le nouvel appareil avait dĂ©jĂ les permissions MFA accordĂ©es.
Tip
Notez que pour rĂ©aliser cette attaque vous aurez besoin des autorisations pour register new devices. De plus, enregistrer un appareil ne signifie pas que lâappareil sera autorisĂ© Ă sâenrĂŽler dans Intune.
Caution
Cette attaque a Ă©tĂ© corrigĂ©e en septembre 2021 car vous ne pouvez plus enregistrer de nouveaux appareils en utilisant des SSO tokens. Cependant, il est toujours possible dâenregistrer des appareils de maniĂšre lĂ©gitime (en ayant le username, password et MFA si nĂ©cessaire). Check: roadtx.
Ăcraser un ticket dâappareil
Il Ă©tait possible de request a device ticket, overwrite celui courant de lâappareil, et durant le flux steal the PRT (donc pas besoin de le voler depuis le TPM). Pour plus dâinfos voir cette confĂ©rence.
.png)
Caution
Cependant, cela a été corrigé.
Remplacer la clé WHFB
Voir les slides originales ici
RĂ©sumĂ© de lâattaque :
- Il est possible de remplacer la clĂ© WHFB enregistrĂ©e dâun appareil via SSO
- Cela déjoue la protection TPM car la clé est interceptée lors de la génération de la nouvelle clé
- Cela fournit aussi de la persistance
.png)
Les utilisateurs peuvent modifier leur propre propriĂ©tĂ© searchableDeviceKey via lâAzure AD Graph, cependant, lâattaquant doit disposer dâun appareil dans le tenant (enregistrĂ© Ă la volĂ©e ou ayant volĂ© cert + key dâun appareil lĂ©gitime) et dâun jeton dâaccĂšs valide pour lâAAD Graph.
Ensuite, il est possible de générer une nouvelle clé avec :
roadtx genhellokey -d <device id> -k tempkey.key
et ensuite PATCH les informations du searchableDeviceKey :
.png)
Il est possible dâobtenir un jeton dâaccĂšs dâun utilisateur via device code phishing et dâabuser des Ă©tapes prĂ©cĂ©dentes pour voler son accĂšs. Pour plus dâinformations, consultez :
Az - Primary Refresh Token (PRT)
.png)
Références
- https://youtu.be/BduCn8cLV1A
- https://www.youtube.com/watch?v=x609c-MUZ_g
- https://www.youtube.com/watch?v=AFay_58QubY
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

