AWS - Directory Services / WorkDocs Enum
Reading time: 6 minutes
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
Directory Services
AWS Directory Service для Microsoft Active Directory - це керована служба, яка спрощує налаштування, експлуатацію та масштабування каталогу в AWS Cloud. Вона побудована на базі Microsoft Active Directory і тісно інтегрується з іншими службами AWS, що полегшує управління вашими робочими навантаженнями, що знають про каталог, та ресурсами AWS. З AWS Managed Microsoft AD ви можете використовувати свої існуючі користувачі, групи та політики Active Directory для управління доступом до ваших ресурсів AWS. Це може допомогти спростити управління ідентичністю та зменшити потребу в додаткових рішеннях для ідентифікації. AWS Managed Microsoft AD також забезпечує автоматичні резервні копії та можливості відновлення після катастроф, що допомагає забезпечити доступність та надійність вашого каталогу. Загалом, AWS Directory Service для Microsoft Active Directory може допомогти вам заощадити час і ресурси, надаючи керовану, високо доступну та масштабовану службу Active Directory в AWS Cloud.
Options
Directory Services дозволяє створювати 5 типів каталогів:
- AWS Managed Microsoft AD: Який запустить новий Microsoft AD в AWS. Ви зможете встановити пароль адміністратора та отримати доступ до DC у VPC.
- Simple AD: Який буде Linux-Samba сервером, сумісним з Active Directory. Ви зможете встановити пароль адміністратора та отримати доступ до DC у VPC.
- AD Connector: Проксі для перенаправлення запитів до каталогу на ваш існуючий Microsoft Active Directory без кешування будь-якої інформації в хмарі. Він буде слухати в VPC, і вам потрібно надати облікові дані для доступу до існуючого AD.
- Amazon Cognito User Pools: Це те ж саме, що і Cognito User Pools.
- Cloud Directory: Це найпростіший варіант. Безсерверний каталог, де ви вказуєте схему для використання та оплачуєте відповідно до використання.
AWS Directory services дозволяє синхронізувати з вашим існуючим локальним Microsoft AD, запустити свій власний в AWS або синхронізувати з іншими типами каталогів.
Lab
Тут ви можете знайти гарний посібник для створення власного Microsoft AD в AWS: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_tutorial_test_lab_base.html
Enumeration
# Get directories and DCs
aws ds describe-directories
aws ds describe-domain-controllers --directory-id <id>
# Get directory settings
aws ds describe-trusts
aws ds describe-ldaps-settings --directory-id <id>
aws ds describe-shared-directories --owner-directory-id <id>
aws ds get-directory-limits
aws ds list-certificates --directory-id <id>
aws ds describe-certificate --directory-id <id> --certificate-id <id>
Вхід
Зверніть увагу, що якщо опис каталогу містив домен у полі AccessUrl
, це означає, що користувач може, ймовірно, увійти зі своїми обліковими даними AD в деякі AWS сервіси:
<name>.awsapps.com/connect
(Amazon Connect)<name>.awsapps.com/workdocs
(Amazon WorkDocs)<name>.awsapps.com/workmail
(Amazon WorkMail)<name>.awsapps.com/console
(Amazon Management Console)<name>.awsapps.com/start
(IAM Identity Center)
Підвищення привілеїв
AWS - Directory Services Privesc
Постійність
Використання користувача AD
Користувачу AD можна надати доступ до консолі управління AWS через роль, яку потрібно прийняти. Ім'я користувача за замовчуванням - Admin і можна змінити його пароль з консолі AWS.
Отже, можливо змінити пароль Admin, створити нового користувача або змінити пароль користувача та надати цьому користувачу роль для підтримки доступу.
Також можливо додати користувача до групи в AD та надати цій групі AD доступ до ролі (щоб зробити цю постійність більш непомітною).
Спільний доступ до AD (від жертви до атакуючого)
Можливо поділитися середовищем AD від жертви до атакуючого. Таким чином, атакуючий зможе продовжувати доступ до середовища AD.
Однак це передбачає спільний доступ до керованого AD та також створення з'єднання VPC peering.
Ви можете знайти посібник тут: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/step1_setup_networking.html
Спільний доступ до AD (від атакуючого до жертви)
Не виглядає можливим надати доступ до AWS користувачам з іншого середовища AD до одного облікового запису AWS.
WorkDocs
Amazon Web Services (AWS) WorkDocs - це хмарний сервіс зберігання та обміну файлами. Він є частиною набору хмарних обчислювальних послуг AWS і призначений для забезпечення безпечного та масштабованого рішення для організацій для зберігання, обміну та співпраці над файлами та документами.
AWS WorkDocs надає веб-інтерфейс для користувачів для завантаження, доступу та управління своїми файлами та документами. Він також пропонує такі функції, як контроль версій, спільна робота в реальному часі та інтеграція з іншими сервісами AWS та сторонніми інструментами.
Перерахування
# Get AD users (Admin not included)
aws workdocs describe-users --organization-id <directory-id>
# Get AD groups (containing "a")
aws workdocs describe-groups --organization-id d-9067a0285c --search-query a
# Create user (created inside the AD)
aws workdocs create-user --username testingasd --given-name testingasd --surname testingasd --password <password> --email-address name@directory.domain --organization-id <directory-id>
# Get what each user has created
aws workdocs describe-activities --user-id "S-1-5-21-377..."
# Get what was created in the directory
aws workdocs describe-activities --organization-id <directory-id>
# Get folder content
aws workdocs describe-folder-contents --folder-id <fold-id>
# Get file (a url to access with the content will be retreived)
aws workdocs get-document --document-id <doc-id>
# Get resource permissions if any
aws workdocs describe-resource-permissions --resource-id <value>
# Add permission so anyway can see the file
aws workdocs add-resource-permissions --resource-id <id> --principals Id=anonymous,Type=ANONYMOUS,Role=VIEWER
## This will give an id, the file will be acesible in: https://<name>.awsapps.com/workdocs/index.html#/share/document/<id>
Privesc
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.