Az - Key Vault
Reading time: 7 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.
Основна інформація
Azure Key Vault - це хмарний сервіс, наданий Microsoft Azure для безпечного зберігання та управління чутливою інформацією, такою як секрети, ключі, сертифікати та паролі. Він діє як централізований репозиторій, пропонуючи безпечний доступ та детальний контроль за допомогою Azure Active Directory (Azure AD). З точки зору безпеки, Key Vault забезпечує захист апаратного модуля безпеки (HSM) для криптографічних ключів, гарантує, що секрети шифруються як в спокої, так і в русі, і пропонує надійне управління доступом через контроль доступу на основі ролей (RBAC) та політики. Він також має журналювання аудиту, інтеграцію з Azure Monitor для відстеження доступу та автоматизовану ротацію ключів для зменшення ризику від тривалого відкриття ключів.
Дивіться Azure Key Vault REST API overview для отримання повних деталей.
Згідно з документацією, Vaults підтримують зберігання програмних та HSM-підтримуваних ключів, секретів і сертифікатів. Керовані HSM пули підтримують лише HSM-підтримувані ключі.
Формат URL для vaults - https://{vault-name}.vault.azure.net/{object-type}/{object-name}/{object-version}
, а для керованих HSM пулів: https://{hsm-name}.managedhsm.azure.net/{object-type}/{object-name}/{object-version}
Де:
vault-name
- це глобально унікальне ім'я ключового сховищаobject-type
може бути "keys", "secrets" або "certificates"object-name
- унікальне ім'я об'єкта в ключовому сховищіobject-version
- генерується системою і використовується для адресації унікальної версії об'єкта.
Для доступу до секретів, збережених у сховищі, можна вибрати між 2 моделями дозволів під час створення сховища:
- Політика доступу до сховища
- Azure RBAC (найбільш поширена та рекомендована)
- Ви можете знайти всі детальні дозволи, що підтримуються, за адресою https://learn.microsoft.com/en-us/azure/role-based-access-control/permissions/security#microsoftkeyvault
Контроль доступу
Доступ до ресурсу Key Vault контролюється двома площинами:
- площина управління, ціль якої - management.azure.com.
- Використовується для управління ключовим сховищем та політиками доступу. Підтримується лише контроль доступу на основі ролей Azure (RBAC).
- площина даних, ціль якої -
<vault-name>.vault.azure.com
. - Використовується для управління та доступу до даних (ключів, секретів і сертифікатів) в ключовому сховищі. Це підтримує політики доступу до ключового сховища або Azure RBAC.
Роль, така як Contributor, яка має дозволи в площині управління для управління політиками доступу, може отримати доступ до секретів, змінюючи політики доступу.
Вбудовані ролі RBAC Key Vault
.png)
Мережевий доступ
У Azure Key Vault можна налаштувати правила брандмауера, щоб дозволити операції площини даних лише з вказаних віртуальних мереж або діапазонів IPv4 адрес. Це обмеження також впливає на доступ через портал адміністрування Azure; користувачі не зможуть перерахувати ключі, секрети або сертифікати в ключовому сховищі, якщо їх IP-адреса не входить до авторизованого діапазону.
Для аналізу та управління цими налаштуваннями ви можете використовувати Azure CLI:
az keyvault show --name name-vault --query networkAcls
Попередня команда відобразить налаштування брандмауера name-vault
, включаючи активовані IP-діапазони та політики для забороненого трафіку.
Більше того, можливо створити приватний кінець для дозволу приватного з'єднання з сейфом.
Захист від видалення
Коли створюється ключовий сейф, мінімальна кількість днів для дозволу на видалення становить 7. Це означає, що щоразу, коли ви намагаєтеся видалити цей ключовий сейф, йому знадобиться принаймні 7 днів для видалення.
Однак можливо створити сейф з вимкненим захистом від очищення, що дозволяє очищати ключовий сейф та об'єкти під час періоду зберігання. Хоча, як тільки цей захист увімкнено для сейфа, його не можна вимкнути.
Перерахування
# List all Key Vaults in the subscription
az keyvault list
# List Key Vaults in a specific Resource Group
az keyvault list --resource-group <ResourceGroupName>
# Show details of a specific Key Vault
az keyvault show --name <KeyVaultName> # If accessPolicies, you can see them here
# List all keys in a Key Vault
az keyvault key list --vault-name <KeyVaultName>
# List all secrets in a Key Vault
az keyvault secret list --vault-name <KeyVaultName>
# Get versions of a secret
az keyvault secret list-versions --vault-name <KeyVaultName> --name <SecretName>
# List all certificates in a Key Vault
az keyvault certificate list --vault-name <KeyVaultName>
# List all deleted Key Vaults in the subscription
az keyvault list-deleted
# Get properties of a deleted Key Vault
az keyvault show-deleted --name <KeyVaultName>
# Get assigned roles
az role assignment list --include-inherited --scope "/subscriptions/<subscription-uuid>/resourceGroups/<resource-group>/providers/Microsoft.KeyVault/vaults/<vault-name>"
# Get secret value
az keyvault secret show --vault-name <KeyVaultName> --name <SecretName>
# Get old versions secret value
az keyvault secret show --id https://<KeyVaultName>.vault.azure.net/secrets/<KeyVaultName>/<idOldVersion>
Підвищення Привілеїв
Після Експлуатації
Az - Key Vault Post Exploitation
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.