Az - Toestel-registrasie

Tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Leer & oefen Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks

Basiese Inligting

Wanneer ’n toestel by AzureAD aansluit, word ’n nuwe object in AzureAD geskep.

Wanneer ’n toestel geregistreer word, word die gebruiker gevra om in te teken met sy rekening (MFA word versoek indien nodig), daarna versoek dit tokens vir die device registration service en vra dan ’n finale bevestigingsprompt.

Dan word twee RSA-sleutelpaar op die toestel gegenereer: Die device key (public sleutel) wat na AzureAD gestuur word, en die transport sleutel (private sleutel) wat, indien moontlik, in die TPM gestoor word.

Dan word die object in AzureAD gegenereer (nie in Intune nie) en AzureAD gee ’n sertifikaat wat deur dit geteken is terug aan die toestel. Jy kan nagaan dat die toestel by AzureAD aangesluit is en inligting oor die sertifikaat (soos of dit deur TPM beskerm word).:

dsregcmd /status

Na die toestelregistrasie word ’n Primary Refresh Token deur die LSASS CloudAP module versoek en aan die toestel gegee. Tesame met die PRT word ook die session key versleuteld sodat slegs die toestel dit kan ontsleutel (using the public key of the transport key) afgelewer en dit is nodig om die PRT te gebruik.

Vir meer inligting oor wat ’n PRT is, sien:

Az - Primary Refresh Token (PRT)

TPM - Trusted Platform Module

Die TPM beskerm teen sleutel extraction vanaf ’n afgeskakelde toestel (indien beskerm deur ’n PIN) en teen die onttrekking van private materiaal uit die OS-laag.
Maar dit beskerm nie teen sniffing van die fisiese verbinding tussen die TPM en die CPU nie, of teen die gebruik van die cryptographic material in die TPM terwyl die stelsel loop vanaf ’n proses met SYSTEM-regte.

As jy die volgende bladsy nagaan sal jy sien dat stealing the PRT gebruik kan word om toegang te kry as die user, wat problematies is omdat die PRT op toestelle geleë is, dus kan dit van hulle gesteel word (of, as dit nie gesteel word nie, misbruik word om nuwe signing keys te genereer):

Az - Primary Refresh Token (PRT)

Registrasie van ’n toestel met SSO tokens

Dit sou moontlik wees vir ’n aanvaller om ’n token vir die Microsoft device registration service vanaf die gekompromitteerde toestel te versoek en dit te registreer:

# 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

Which will give you a certificate you can use to ask for PRTs in the future. Therefore maintaining persistence and bypassing MFA because the original PRT token used to register the new device already had MFA permissions granted.

Tip

Let daarop dat om hierdie aanval uit te voer jy toestemming nodig het om nuwe toestelle te registreer. Die registrasie van ’n toestel beteken ook nie dat die toestel toegelaat sal word om by Intune in te skryf nie.

Caution

Hierdie aanval is in September 2021 reggestel aangesien jy nie meer nuwe toestelle kan registreer met SSO-tokens nie. Dit is egter steeds moontlik om toestelle op ’n regmatige wyse te registreer (met gebruikersnaam, wagwoord en MFA indien nodig). Check: roadtx.

Oorskryf ’n toestelkaartjie

Dit was moontlik om ’n device ticket aan te vra, die huidige een van die toestel te oorskryf, en tydens die proses die PRT te steel (dus geen behoefte om dit uit die TPM te steel nie). For more info check this talk.

Caution

Dit is egter reggestel.

Overwrite WHFB key

Check the original slides here

Attack summary:

  • Dit is moontlik om via SSO die geregistreerde WHFB-sleutel van ’n device te oorskryf
  • Dit omseil TPM-beskerming aangesien die sleutel tydens die generering van die nuwe sleutel afgeluister word
  • Dit bied ook persistence

Users can modify their own searchableDeviceKey property via the Azure AD Graph, however, the attacker needs to have a device in the tenant (registered on the fly or having stolen cert + key from a legit device) and a valid access token for the AAD Graph.

Then, it’s possible to generate a new key with:

roadtx genhellokey -d <device id> -k tempkey.key

en dan PATCH die inligting van die searchableDeviceKey:

Dit is moontlik om ’n access token van ’n gebruiker te kry via device code phishing en die vorige stappe te misbruik om sy toegang te steel. Vir meer inligting sien:

Az - Primary Refresh Token (PRT)

Verwysings

Tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Leer & oefen Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks