GWS - Admin Directory Sync

Wsparcie dla HackTricks

Podstawowe Informacje

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 i 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 (poprzez 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 przez 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).

Z AD/EntraID -> Google Workspace (& GCP)

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.

Atakowanie użytkowników

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ślne.

Atakowanie Grup

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 uprzywilejowanych grup 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 dla atakującego utworzenie grupy gcp-organization-admins@<entraid.email> w EntraID, dodanie użytkownika do tej grupy i czekanie na synchronizację wszystkich grup. Użytkownik zostanie dodany do grupy gcp-organization-admins@<workspace.email>, eskalując uprawnienia w GCP.

Z Google Workspace -> AD/EntraID

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.

Wsparcie dla HackTricks

Last updated