GWS - Admin Directory Sync
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Основна різниця між цим способом синхронізації користувачів з GCDS полягає в тому, що GCDS виконується вручну з деякими двійковими файлами, які потрібно завантажити та запустити, тоді як Admin Directory Sync є безсерверним і керується Google на https://admin.google.com/ac/sync/externaldirectories.
На момент написання цього матеріалу ця служба знаходиться в бета-версії і підтримує 2 типи синхронізації: з Active Directory та з Azure Entra ID:
Active Directory: Щоб налаштувати це, вам потрібно надати доступ Google до вашого середовища Active Directory. Оскільки Google має доступ лише до мереж GCP (через VPC connectors), вам потрібно створити конектор, а потім зробити ваш AD доступним з цього конектора, розмістивши його на ВМ у мережі GCP або використовуючи Cloud VPN або Cloud Interconnect. Потім вам також потрібно надати облікові дані облікового запису з правами читання на каталог та сертифікат для зв'язку через LDAPS.
Azure Entra ID: Для налаштування цього потрібно просто увійти в Azure з користувачем з правами читання на підписку Entra ID у спливаючому вікні, яке відобразить Google, і Google зберігатиме токен з правами читання на Entra ID.
Після правильного налаштування обидва варіанти дозволять синхронізувати користувачів та групи з Workspace, але не дозволять налаштовувати користувачів та групи з Workspace до AD або EntraID.
Інші можливості, які будуть доступні під час цієї синхронізації:
Надіслати електронний лист новим користувачам для входу
Автоматично змінити їхню електронну адресу на ту, що використовується Workspace. Тобто, якщо Workspace використовує @hacktricks.xyz
, а користувачі EntraID використовують @carloshacktricks.onmicrosoft.com
, то для користувачів, створених в обліковому записі, буде використано @hacktricks.xyz
.
Вибрати групи, що містять користувачів, які будуть синхронізовані.
Вибрати групи для синхронізації та створення в Workspace (або вказати на синхронізацію всіх груп).
Якщо вам вдасться скомпрометувати AD або EntraID, ви отримаєте повний контроль над користувачами та групами, які будуть синхронізовані з Google Workspace. Однак зверніть увагу, що паролі, які можуть використовувати користувачі в Workspace, можуть бути однаковими або ні.
Коли відбувається синхронізація, можуть синхронізуватися всі користувачі з AD або лише ті, що з конкретного OU, або лише користувачі, які є членами конкретних груп в EntraID. Це означає, що для атаки на синхронізованого користувача (або створення нового, який буде синхронізований) вам спочатку потрібно з'ясувати, які користувачі синхронізуються.
Користувачі можуть повторно використовувати пароль або ні з AD або EntraID, але це означає, що вам потрібно скомпрометувати паролі користувачів для входу.
Якщо у вас є доступ до електронних листів користувачів, ви можете змінити пароль Workspace для існуючого користувача, або створити нового користувача, почекати, поки він буде синхронізований, і налаштувати обліковий запис.
Після того, як ви отримаєте доступ до користувача в Workspace, йому можуть бути надані деякі дозволи за замовчуванням.
Вам також потрібно спочатку з'ясувати, які групи синхронізуються. Хоча існує можливість, що ВСІ групи синхронізуються (оскільки Workspace це дозволяє).
Зверніть увагу, що навіть якщо групи та членства імпортуються в Workspace, користувачі, які не синхронізуються в синхронізації користувачів, не будуть створені під час синхронізації груп, навіть якщо вони є членами будь-яких з синхронізованих груп.
Якщо ви знаєте, які групи з Azure отримують дозволи в Workspace або GCP, ви можете просто додати скомпрометованого користувача (або новоствореного) до цієї групи та отримати ці дозволи.
Є ще один варіант зловживання існуючими привілейованими групами в Workspace. Наприклад, група gcp-organization-admins@<workspace.email>
зазвичай має високі привілеї над GCP.
Якщо синхронізація, наприклад, з EntraID до Workspace налаштована на заміну домену імпортованого об'єкта електронною адресою Workspace, зловмисник зможе створити групу gcp-organization-admins@<entraid.email>
в EntraID, додати користувача до цієї групи та почекати, поки відбудеться синхронізація всіх груп.
Користувач буде доданий до групи gcp-organization-admins@<workspace.email>
, підвищуючи привілеї в GCP.
Зверніть увагу, що Workspace вимагає облікові дані з правами лише на читання над AD або EntraID для синхронізації користувачів та груп. Тому неможливо зловживати Google Workspace для внесення будь-яких змін в AD або EntraID. Отже, це неможливо на даний момент.
Я також не знаю, де Google зберігає облікові дані AD або токен EntraID, і ви не можете відновити їх, переналаштовуючи синхронізацію (вони не з'являються у веб-формі, вам потрібно ввести їх знову). Однак з веб-інтерфейсу може бути можливим зловживання поточною функціональністю для перегляду користувачів та груп.
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)