Az - Pass the Certificate
Pass the Certificate (Azure)
W maszynach dołączonych do Azure możliwe jest uwierzytelnienie z jednej maszyny na drugą za pomocą certyfikatów, które muszą być wydane przez Azure AD CA dla wymaganego użytkownika (jako podmiot), gdy obie maszyny obsługują mechanizm uwierzytelniania NegoEx.
W super uproszczonych słowach:
Maszyna (klient) inicjująca połączenie potrzebuje certyfikatu z Azure AD dla użytkownika.
Klient tworzy nagłówek JSON Web Token (JWT) zawierający PRT i inne szczegóły, podpisuje go za pomocą klucza pochodnego (używając klucza sesji i kontekstu bezpieczeństwa) i wysyła go do Azure AD.
Azure AD weryfikuje podpis JWT za pomocą klucza sesji klienta i kontekstu bezpieczeństwa, sprawdza ważność PRT i odpowiada certyfikatem.
W tym scenariuszu, po zebraniu wszystkich informacji potrzebnych do ataku Pass the PRT:
Nazwa użytkownika
ID najemcy
PRT
Kontekst bezpieczeństwa
Klucz pochodny
Możliwe jest zażądanie certyfikatu P2P dla użytkownika za pomocą narzędzia PrtToCert:
Certyfikaty będą ważne tak długo, jak PRT. Aby użyć certyfikatu, możesz skorzystać z narzędzia python AzureADJoinedMachinePTC, które uwierzytelni się na zdalnej maszynie, uruchomi PSEXEC i otworzy CMD na maszynie ofiary. To pozwoli nam ponownie użyć Mimikatz, aby uzyskać PRT innego użytkownika.
References
Aby uzyskać więcej informacji na temat działania Pass the Certificate, sprawdź oryginalny post https://medium.com/@mor2464/azure-ad-pass-the-certificate-d0c5de624597
Last updated