Az - Pass the Certificate
Przekaż Certyfikat (Azure)
W połączonych maszynach w Azure, możliwe jest uwierzytelnianie 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 bardzo uproszczonych terminach:
Maszyna (klient) inicjująca połączenie potrzebuje certyfikatu od 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 z certyfikatem.
W tym scenariuszu i po zebraniu wszystkich informacji potrzebnych do ataku Przekaż PRT:
Nazwa użytkownika
ID Najemcy
PRT
Kontekst bezpieczeństwa
Klucz pochodny
Możliwe jest żądanie certyfikatu P2P dla użytkownika za pomocą narzędzia PrtToCert:
Certyfikaty będą ważne tak samo jak PRT. Aby użyć certyfikatu, możesz skorzystać z narzędzia pythonowego AzureADJoinedMachinePTC, które uwierzytelnia się na zdalnej maszynie, uruchamia PSEXEC i otwiera CMD na maszynie ofiary. Pozwoli nam to ponownie skorzystać z Mimikatz, aby uzyskać PRT innego użytkownika.
Odnośniki
Aby uzyskać więcej informacji na temat działania przekazywania certyfikatu, sprawdź oryginalny post https://medium.com/@mor2464/azure-ad-pass-the-certificate-d0c5de624597
Last updated