Translated ['src/pentesting-cloud/azure-security/README.md', 'src/pentes

This commit is contained in:
Translator
2025-02-07 00:05:12 +00:00
parent 3a8719b29d
commit 0e7dce31c1
2 changed files with 68 additions and 43 deletions

View File

@@ -14,30 +14,30 @@ az-basic-information/
Для аудиту середовища AZURE дуже важливо знати: які **послуги використовуються**, що **експонується**, хто має **доступ** до чого, і як внутрішні служби Azure та **зовнішні служби** з'єднані.
З точки зору Red Team, **перший крок для компрометації середовища Azure** - це отримати деяке **підтвердження**.
З точки зору Red Team, **перший крок до компрометації середовища Azure** - це отримати **переправу**.
### Зовнішня енумерація та початковий доступ
Перший крок - це, звичайно, перерахувати інформацію про орендаря, якого ви атакуєте, і спробувати отримати підтвердження.
Перший крок - це, звичайно, перерахувати інформацію про орендаря, якого ви атакуєте, і спробувати отримати переправу.
На основі доменного імені можна дізнатися, **чи використовує компанія Azure**, отримати **ідентифікатор орендаря**, отримати інші **дійсні домени** в тому ж орендарі (якщо є) та отримати **релевантну інформацію**, таку як чи увімкнено SSO, налаштування електронної пошти, дійсні електронні адреси користувачів...
Перегляньте наступну сторінку, щоб дізнатися, як виконати **зовнішню енумерацію**:
Перевірте наступну сторінку, щоб дізнатися, як виконати **зовнішню енумерацію**:
{{#ref}}
az-unauthenticated-enum-and-initial-entry/
{{#endref}}
З цією інформацією найпоширеніші способи спробувати отримати підтвердження:
З цією інформацією найпоширеніші способи спробувати отримати переправу:
- **OSINT**: Перевірте наявність **витоків** у Github або будь-якій іншій відкритій платформі, яка може містити **облікові дані** або цікаву інформацію.
- **Повторне використання паролів**, витоки або [password spraying](az-unauthenticated-enum-and-initial-entry/az-password-spraying.md)
- Купити облікові дані у співробітника
- [**Звичайна фішинг-атака**](https://book.hacktricks.wiki/en/generic-methodologies-and-resources/phishing-methodology/index.html) (облікові дані або Oauth App)
- [**Звичайна фішингова атака**](https://book.hacktricks.wiki/en/generic-methodologies-and-resources/phishing-methodology/index.html) (облікові дані або Oauth App)
- [Фішинг за допомогою коду пристрою](az-unauthenticated-enum-and-initial-entry/az-device-code-authentication-phishing.md)
- **Зламані** третіми сторонами
- Вразливості в Azure-Hosted Applications
- [**Серверна підробка запитів**](https://book.hacktricks.wiki/en/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.html) з доступом до метаданих
- **Перехоплення піддоменів** як у [https://godiego.co/posts/STO-Azure/](https://godiego.co/posts/STO-Azure/)
- [**Server Side Request Forgery**](https://book.hacktricks.wiki/en/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.html) з доступом до метаданих
- **Перехоплення піддоменів**, як у [https://godiego.co/posts/STO-Azure/](https://godiego.co/posts/STO-Azure/)
- **Інші неправильні налаштування служб Azure**
- Якщо комп'ютер розробника зламано ([WinPEAS і LinPEAS](https://github.com/peass-ng/PEASS-ng) можуть знайти цю інформацію):
- Всередині **`<HOME>/.Azure`**
@@ -55,7 +55,7 @@ az-unauthenticated-enum-and-initial-entry/
- У Windows це просто генерує ID токени.
- Можна перевірити, чи використовувався Az PowerShell у Linux і macOS, перевіривши, чи існує `$HOME/.local/share/.IdentityService/` (хоча вміст файлів порожній і марний)
Знайдіть **інші неправильні налаштування служб Azure**, які можуть призвести до підтвердження, на наступній сторінці:
Знайдіть **інші неправильні налаштування служб Azure**, які можуть призвести до переправи, на наступній сторінці:
{{#ref}}
az-unauthenticated-enum-and-initial-entry/
@@ -85,7 +85,7 @@ az-enumeration-tools.md
Після обходу ви можете повернутися до вашої початкової налаштування і все ще мати доступ.
Перегляньте:
Перевірте:
{{#ref}}
az-privilege-escalation/az-entraid-privesc/az-conditional-access-policies-mfa-bypass.md
@@ -143,14 +143,14 @@ Get-AzureADTenantDetail
### Entra ID Enumeration & Privesc
За замовчуванням будь-який користувач повинен мати **достатньо прав для перерахунку** таких речей, як користувачі, групи, ролі, служби... (перевірте [стандартні дозволи AzureAD](az-basic-information/index.html#default-user-permissions)).\
За замовчуванням, будь-який користувач повинен мати **достатньо прав для перерахунку** таких речей, як користувачі, групи, ролі, служби... (перевірте [стандартні дозволи AzureAD](az-basic-information/index.html#default-user-permissions)).\
Тут ви можете знайти посібник:
{{#ref}}
az-services/az-azuread.md
{{#endref}}
Перевірте **інструменти пост-експлуатації**, щоб знайти інструменти для ескалації привілеїв в Entra ID, такі як **AzureHound:**
Перевірте **інструменти після експлуатації**, щоб знайти інструменти для підвищення привілеїв в Entra ID, такі як **AzureHound:**
{{#ref}}
az-enumeration-tools.md#automated-post-exploitation-tools
@@ -167,36 +167,53 @@ az-enumeration-tools.md#automated-post-exploitation-tools
Команда Az PowerShell **`Get-AzResource`** дозволяє вам **дізнатися про ресурси, які ваш поточний користувач може бачити**.
Крім того, ви можете отримати ту ж інформацію в **веб-консолі**, перейшовши за [https://portal.azure.com/#view/HubsExtension/BrowseAll](https://portal.azure.com/#view/HubsExtension/BrowseAll) або шукаючи "Усі ресурси" або виконавши: `az rest --method GET --url "https://management.azure.com/subscriptions/<subscription-id>/resources?api-version=2021-04-01"`
Крім того, ви можете отримати ту ж інформацію в **веб-консолі**, перейшовши за [https://portal.azure.com/#view/HubsExtension/BrowseAll](https://portal.azure.com/#view/HubsExtension/BrowseAll) або шукаючи "Усі ресурси" або виконуючи:
```bash
az rest --method GET --url "https://management.azure.com/subscriptions/<subscription-id>/resources?api-version=2021-04-01"
```
2. **Знайдіть дозволи, які у вас є на ресурси, до яких ви маєте доступ, і знайдіть ролі, призначені вам**:
2. **Знайдіть права, які у вас є на ресурси, до яких у вас є доступ, і знайдіть ролі, призначені вам**:
Зверніть увагу, що вам потрібен дозвіл **`Microsoft.Authorization/roleAssignments/read`** для виконання цієї дії.
Зверніть увагу, що вам потрібні права **`Microsoft.Authorization/roleAssignments/read`** для виконання цієї дії.
Крім того, з достатніми правами роль **`Get-AzRoleAssignment`** може бути використана для **перерахунку всіх ролей** у підписці або прав на конкретний ресурс, вказуючи його, як у: **`Get-AzRoleAssignment -Scope /subscriptions/9291ff6e-6afb-430e-82a4-6f04b2d05c7f/resourceGroups/Resource_Group_1/providers/Microsoft.RecoveryServices/vaults/vault-m3ww8ut4`**.
Також можливо отримати цю інформацію, запустивши **`az rest --method GET --uri "https://management.azure.com/<Scope>/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"`** як у:
- **`az rest --method GET --uri "https://management.azure.com//subscriptions/9291ff6e-6afb-430e-82a4-6f04b2d05c7f/resourceGroups/Resource_Group_1/providers/Microsoft.KeyVault/vaults/vault-m3ww8ut4/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"`**
3. **Знайдіть детальні права ролей, які прикріплені до вас**:
Потім, щоб отримати детальні права, ви можете виконати **`(Get-AzRoleDefinition -Id "<RoleDefinitionId>").Actions`**.
Або викликати API безпосередньо з **`az rest --method GET --uri "https://management.azure.com//subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleDefinitions/<RoleDefinitionId>?api-version=2020-08-01-preview" | jq ".properties"`**.
Крім того, з достатніми дозволами роль **`Get-AzRoleAssignment`** може бути використана для **перерахунку всіх ролей** у підписці або дозволу на конкретний ресурс, вказуючи його так:
```bash
Get-AzRoleAssignment -Scope /subscriptions/<subscription-id>/resourceGroups/Resource_Group_1/providers/Microsoft.RecoveryServices/vaults/vault-m3ww8ut4
```
Також можливо отримати цю інформацію, запустивши:
```bash
az rest --method GET --uri "https://management.azure.com/<Scope>/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"
```
як у:
```bash
az rest --method GET --uri "https://management.azure.com//subscriptions/<subscription-id>/resourceGroups/Resource_Group_1/providers/Microsoft.KeyVault/vaults/vault-m3ww8ut4/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"
```
Інший варіант - отримати ролі, прикріплені до вас в azure за допомогою:
```bash
az role assignment list --assignee "<email>" --all --output table
```
Або запустіть наступне (Якщо результати порожні, це може бути через те, що у вас немає дозволу на їх отримання):
```bash
az rest --method GET --uri 'https://management.azure.com/subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleAssignments?api-version=2022-04-01&$filter=principalId eq '<user-id>'
```
3. **Знайдіть детальні дозволи ролей, які до вас прикріплені**:
Тоді, щоб отримати детальний дозвіл, ви можете виконати **`(Get-AzRoleDefinition -Id "<RoleDefinitionId>").Actions`**.
Або викликати API безпосередньо з
```bash
az rest --method GET --uri "https://management.azure.com//subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleDefinitions/<RoleDefinitionId>?api-version=2020-08-01-preview" | jq ".properties"
```
У наступному розділі ви можете знайти **інформацію про найпоширеніші сервіси Azure та як їх перерахувати**:
{{#ref}}
az-services/
{{#endref}}
### Privilege Escalation, Post-Exploitation & Persistence
### Підвищення привілеїв, пост-експлуатація та збереження
Коли ви знаєте, як структуроване середовище Azure і які сервіси використовуються, ви можете почати шукати способи **ескалації привілеїв, бічного переміщення, виконання інших атак після експлуатації та підтримки стійкості**.
Коли ви дізнаєтеся, як структуроване середовище Azure і які сервіси використовуються, ви можете почати шукати способи **підвищення привілеїв, бічного переміщення, виконання інших атак після експлуатації та підтримки збереження**.
У наступному розділі ви можете знайти інформацію про те, як ескалувати привілеї в найпоширеніших сервісах Azure:
У наступному розділі ви можете знайти інформацію про те, як підвищити привілеї в найпоширеніших сервісах Azure:
{{#ref}}
az-privilege-escalation/
@@ -208,7 +225,7 @@ az-privilege-escalation/
az-post-exploitation/
{{#endref}}
У наступному ви можете знайти інформацію про те, як підтримувати стійкість у найпоширеніших сервісах Azure:
У наступному ви можете знайти інформацію про те, як підтримувати збереження в найпоширеніших сервісах Azure:
{{#ref}}
az-persistence/