# GWS - Admin Directory Sync

{{#include ../../../banners/hacktricks-training.md}}

## Osnovne informacije

Glavna razlika između ovog načina sinhronizacije korisnika sa GCDS-om je ta što se GCDS radi ručno sa nekim binarnim datotekama koje treba preuzeti i pokrenuti, dok je **Admin Directory Sync bezserverski** i upravlja njime Google na [https://admin.google.com/ac/sync/externaldirectories](https://admin.google.com/ac/sync/externaldirectories).

U trenutku pisanja ovog teksta, ova usluga je u beta verziji i podržava 2 tipa sinhronizacije: iz **Active Directory** i iz **Azure Entra ID:**

- **Active Directory:** Da biste ovo postavili, potrebno je da **dajte pristup Google-u vašem Active Directory okruženju**. Kako Google ima pristup samo GCP mrežama (putem **VPC konektora**), potrebno je da kreirate konektor i zatim učinite svoj AD dostupnim iz tog konektora tako što ćete ga imati u VM-ovima u GCP mreži ili koristeći Cloud VPN ili Cloud Interconnect. Takođe, potrebno je da obezbedite **akreditiv** naloga sa pristupom za čitanje nad direktorijumom i **sertifikat** za kontakt putem **LDAPS**.
- **Azure Entra ID:** Da biste ovo konfigurisali, potrebno je samo da se **prijavite u Azure sa korisnikom koji ima pristup za čitanje** nad Entra ID pretplatom u iskačućem prozoru koji prikazuje Google, a Google će zadržati token sa pristupom za čitanje nad Entra ID.

Kada je ispravno konfigurisano, obe opcije će omogućiti **sinhronizaciju korisnika i grupa sa Workspace**, ali neće omogućiti konfiguraciju korisnika i grupa iz Workspace-a u AD ili EntraID.

Druge opcije koje će omogućiti tokom ove sinhronizacije su:

- Slanje emaila novim korisnicima za prijavu
- Automatska promena njihove email adrese na onu koju koristi Workspace. Dakle, ako Workspace koristi `@hacktricks.xyz`, a EntraID korisnici koriste `@carloshacktricks.onmicrosoft.com`, koristiće se `@hacktricks.xyz` za korisnike kreirane u nalogu.
- Odabir **grupa koje sadrže korisnike** koji će biti sinhronizovani.
- Odabir **grupa** za sinhronizaciju i kreiranje u Workspace-u (ili označavanje za sinhronizaciju svih grupa).

### Iz AD/EntraID -> Google Workspace (& GCP)

Ako uspete da kompromitujete AD ili EntraID, imaćete potpunu kontrolu nad korisnicima i grupama koje će biti sinhronizovane sa Google Workspace.\
Međutim, imajte na umu da **lozinke** koje korisnici možda koriste u Workspace-u **mogu biti iste ili ne**.

#### Napad na korisnike

Kada se sinhronizacija dogodi, može sinhronizovati **sve korisnike iz AD-a ili samo one iz specifične OU** ili samo **korisnike članove specifičnih grupa u EntraID**. To znači da da biste napali sinhronizovanog korisnika (ili kreirali novog koji se sinhronizuje), prvo ćete morati da saznate koji se korisnici sinhronizuju.

- Korisnici mogu **ponovo koristiti lozinku ili ne iz AD-a ili EntraID**, ali to znači da ćete morati da **kompromitujete lozinke korisnika da biste se prijavili**.
- Ako imate pristup **emailovima** korisnika, mogli biste **promeniti Workspace lozinku postojećeg korisnika**, ili **kreirati novog korisnika**, sačekati da se sinhronizuje i postaviti nalog.

Kada pristupite korisniku unutar Workspace-a, može mu biti dodeljeno nekoliko **dozvola po defaultu**.

#### Napad na grupe

Takođe treba prvo da saznate koje se grupe sinhronizuju. Iako postoji mogućnost da se **SVE** grupe sinhronizuju (jer Workspace to omogućava).

> [!NOTE]
> Imajte na umu da čak i ako su grupe i članstva uvezena u Workspace, **korisnici koji nisu sinhronizovani u sinhronizaciji korisnika neće biti kreirani** tokom sinhronizacije grupa, čak i ako su članovi bilo koje od sinhronizovanih grupa.

Ako znate koje grupe iz Azure-a imaju **dodeljene dozvole u Workspace-u ili GCP-u**, mogli biste jednostavno dodati kompromitovanog korisnika (ili novokreiranog) u tu grupu i dobiti te dozvole.

Postoji još jedna opcija za zloupotrebu postojećih privilegovanih grupa u Workspace-u. Na primer, grupa `gcp-organization-admins@<workspace.email>` obično ima visoke privilegije nad GCP-om.

Ako je sinhronizacija iz, na primer, EntraID-a u Workspace **konfigurisana da zameni domen** uvezenog objekta **sa email-om Workspace-a**, biće moguće da napadač kreira grupu `gcp-organization-admins@<entraid.email>` u EntraID-u, doda korisnika u ovu grupu i sačeka da se sinhronizacija svih grupa dogodi.\
**Korisnik će biti dodat u grupu `gcp-organization-admins@<workspace.email>`, eskalirajući privilegije u GCP-u.**

### Iz Google Workspace -> AD/EntraID

Imajte na umu da Workspace zahteva akreditive sa pristupom samo za čitanje nad AD-om ili EntraID-om da bi sinhronizovao korisnike i grupe. Stoga, nije moguće zloupotrebiti Google Workspace za izvršenje bilo kakvih promena u AD-u ili EntraID-u. Dakle, **to nije moguće** u ovom trenutku.

Takođe ne znam gde Google čuva AD akreditive ili EntraID token i ne možete ih **oporaviti ponovnom konfiguracijom sinhronizacije** (ne pojavljuju se u web formi, morate ih ponovo uneti). Međutim, putem web-a može biti moguće zloupotrebiti trenutnu funkcionalnost za **listanje korisnika i grupa**.

{{#include ../../../banners/hacktricks-training.md}}
