GWS - Admin Directory Sync
Last updated
Last updated
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Główna różnica między tym sposobem synchronizacji użytkowników z GCDS polega na tym, że GCDS jest realizowane ręcznie za pomocą niektórych binariów, które musisz pobrać i uruchomić, podczas gdy Synchronizacja katalogu administratora jest bezserwerowa zarządzana przez Google w https://admin.google.com/ac/sync/externaldirectories.
W momencie pisania tego tekstu usługa ta jest w wersji beta i obsługuje 2 typy synchronizacji: Z Active Directory i z Azure Entra ID:
Active Directory: Aby to skonfigurować, musisz dać Google dostęp do swojego środowiska Active Directory. A ponieważ Google ma dostęp tylko do sieci GCP (za pośrednictwem VPC connectors), musisz utworzyć konektor, a następnie udostępnić swoje AD z tego konektora, umieszczając je w VM w sieci GCP lub używając Cloud VPN lub Cloud Interconnect. Następnie musisz również dostarczyć poświadczenia konta z dostępem do odczytu w katalogu oraz certyfikat do kontaktu za pośrednictwem LDAPS.
Azure Entra ID: Aby to skonfigurować, wystarczy zalogować się do Azure za pomocą użytkownika z dostępem do odczytu w subskrypcji Entra ID w oknie pop-up wyświetlanym przez Google, a Google zachowa token z dostępem do odczytu w Entra ID.
Po poprawnej konfiguracji obie opcje pozwolą na synchronizację użytkowników i grup do Workspace, ale nie pozwolą na konfigurowanie użytkowników i grup z Workspace do AD lub EntraID.
Inne opcje, które będą dostępne podczas tej synchronizacji, to:
Wysłanie e-maila do nowych użytkowników w celu zalogowania się
Automatyczna zmiana ich adresu e-mail na ten używany przez Workspace. Jeśli więc Workspace używa @hacktricks.xyz
, a użytkownicy EntraID używają @carloshacktricks.onmicrosoft.com
, to @hacktricks.xyz
będzie używane dla użytkowników utworzonych w koncie.
Wybór grup zawierających użytkowników, które będą synchronizowane.
Wybór grup do synchronizacji i utworzenia w Workspace (lub wskazanie synchronizacji wszystkich grup).
Jeśli uda ci się skompromitować AD lub EntraID, będziesz miał pełną kontrolę nad użytkownikami i grupami, które będą synchronizowane z Google Workspace. Jednak zauważ, że hasła, które użytkownicy mogą używać w Workspace, mogą być takie same lub nie.
Gdy synchronizacja następuje, może synchronizować wszystkich użytkowników z AD lub tylko tych z konkretnego OU lub tylko użytkowników będących członkami konkretnych grup w EntraID. Oznacza to, że aby zaatakować zsynchronizowanego użytkownika (lub utworzyć nowego, który zostanie zsynchronizowany), musisz najpierw ustalić, którzy użytkownicy są synchronizowani.
Użytkownicy mogą ponownie używać hasła lub nie z AD lub EntraID, ale oznacza to, że musisz skompromitować hasła użytkowników, aby się zalogować.
Jeśli masz dostęp do maili użytkowników, możesz zmienić hasło Workspace istniejącego użytkownika, lub utworzyć nowego użytkownika, poczekać, aż zostanie zsynchronizowany i skonfigurować konto.
Gdy uzyskasz dostęp do użytkownika w Workspace, mogą mu być nadane pewne uprawnienia domyślnie.
Musisz również najpierw ustalić, które grupy są synchronizowane. Chociaż istnieje możliwość, że WSZYSTKIE grupy są synchronizowane (ponieważ Workspace na to pozwala).
Zauważ, że nawet jeśli grupy i członkostwa są importowane do Workspace, użytkownicy, którzy nie są synchronizowani w synchronizacji użytkowników, nie będą tworzeni podczas synchronizacji grup, nawet jeśli są członkami którejkolwiek z synchronizowanych grup.
Jeśli wiesz, które grupy z Azure mają przydzielone uprawnienia w Workspace lub GCP, możesz po prostu dodać skompromitowanego użytkownika (lub nowo utworzonego) do tej grupy i uzyskać te uprawnienia.
Istnieje również inna opcja nadużycia istniejących grup uprzywilejowanych w Workspace. Na przykład grupa gcp-organization-admins@<workspace.email>
zazwyczaj ma wysokie uprawnienia w GCP.
Jeśli synchronizacja z, na przykład, EntraID do Workspace jest skonfigurowana do zastąpienia domeny importowanego obiektu emailem Workspace, możliwe będzie, aby atakujący utworzył grupę gcp-organization-admins@<entraid.email>
w EntraID, dodał użytkownika do tej grupy i czekał, aż synchronizacja wszystkich grup nastąpi.
Użytkownik zostanie dodany do grupy gcp-organization-admins@<workspace.email>
, eskalując uprawnienia w GCP.
Zauważ, że Workspace wymaga poświadczeń z dostępem tylko do odczytu w AD lub EntraID, aby synchronizować użytkowników i grupy. Dlatego nie jest możliwe nadużycie Google Workspace do wprowadzenia jakichkolwiek zmian w AD lub EntraID. Tak więc to nie jest możliwe w tym momencie.
Nie wiem również, gdzie Google przechowuje poświadczenia AD lub token EntraID i nie możesz ich odzyskać, rekonfigurując synchronizację (nie pojawiają się w formularzu internetowym, musisz je podać ponownie). Jednak z poziomu sieci może być możliwe nadużycie obecnej funkcjonalności do wyświetlania użytkowników i grup.
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)