Az - PTA - Pass-through Authentication

Support HackTricks

Grundinformationen

Aus den Dokumenten: Azure Active Directory (Azure AD) Pass-through Authentication ermöglicht es Ihren Benutzern, sich sowohl bei lokalen als auch bei cloudbasierten Anwendungen mit denselben Passwörtern 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 Azure AD 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

  1. Um sich anzumelden, wird der Benutzer zu Azure AD umgeleitet, wo er den Benutzernamen und das Passwort sendet.

  2. Die Anmeldeinformationen werden verschlüsselt und in einer Warteschlange in Azure AD gesetzt.

  3. Der lokale Authentifizierungsagent sammelt die Anmeldeinformationen aus der Warteschlange und entschlüsselt sie. Dieser Agent wird "Pass-through authentication agent" oder PTA-Agent genannt.

  4. 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.

Wenn ein Angreifer den 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).

On-Prem -> Cloud

Wenn Sie Admin-Zugriff auf den Azure AD Connect-Server mit dem laufenden PTA Agenten haben, können Sie das AADInternals-Modul verwenden, um eine Hintertür einzufügen, die ALLE Passwörter, die eingegeben werden, validiert (so dass alle Passwörter für die Authentifizierung gültig sind):

Install-AADIntPTASpy

Wenn die Installation fehlschlägt, liegt das wahrscheinlich an fehlenden Microsoft Visual C++ 2015 Redistributables.

Es ist auch möglich, die im Klartext gesendeten Passwörter an den PTA-Agenten mit dem folgenden Cmdlet auf dem Computer zu sehen, auf dem das vorherige Backdoor installiert wurde:

Get-AADIntPTASpyLog -DecodePasswords

Dieser Backdoor wird:

  • Einen versteckten Ordner C:\PTASpy erstellen

  • Eine PTASpy.dll nach C:\PTASpy kopieren

  • PTASpy.dll in den Prozess AzureADConnectAuthenticationAgentService injizieren

Wenn der AzureADConnectAuthenticationAgent-Dienst neu gestartet wird, wird PTASpy „entladen“ und muss neu installiert werden.

Cloud -> On-Prem

Nachdem GA-Rechte in der Cloud erlangt wurden, ist es möglich, einen neuen PTA-Agenten zu registrieren, indem er auf einem vom Angreifer kontrollierten Gerät eingerichtet wird. Sobald der Agent eingerichtet ist, können wir die vorherigen Schritte wiederholen, um mit jedem Passwort zu authentifizieren und auch die Passwörter im Klartext zu erhalten.

Nahtloses SSO

Es ist möglich, nahtloses SSO mit PTA zu verwenden, das anfällig für andere Missbräuche ist. Überprüfen Sie es in:

Referenzen

Unterstützen Sie HackTricks

Last updated