mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2025-12-27 05:03:31 -08:00
Translated ['src/pentesting-cloud/azure-security/README.md'] to af
This commit is contained in:
@@ -10,17 +10,17 @@ Leer die basiese beginsels van Azure en Entra ID op die volgende bladsy:
|
||||
az-basic-information/
|
||||
{{#endref}}
|
||||
|
||||
## Azure Pentester/Rooi Span Metodologie
|
||||
## Azure Pentester/Red Team Metodologie
|
||||
|
||||
Om 'n AZURE omgewing te oudit, is dit baie belangrik om te weet: watter **dienste gebruik word**, wat is **blootgestel**, wie het **toegang** tot wat, en hoe is interne Azure dienste en **eksterne dienste** gekoppel.
|
||||
Om 'n AZURE omgewing te oudit, is dit baie belangrik om te weet: watter **dienste gebruik word**, wat **blootgestel** word, wie **toegang** het tot wat, en hoe interne Azure dienste en **eksterne dienste** gekoppel is.
|
||||
|
||||
Vanuit 'n Rooi Span perspektief is die **eerste stap om 'n Azure omgewing te kompromitteer** om 'n **voorsprong** te verkry.
|
||||
Vanuit 'n Red Team perspektief is die **eerste stap om 'n Azure omgewing te kompromitteer** om 'n **voothold** te verkry.
|
||||
|
||||
### Eksterne enum & Begin Toegang
|
||||
|
||||
Die eerste stap is natuurlik om inligting oor die huurder wat jy aanval, te evalueer en te probeer om 'n voorsprong te kry.
|
||||
Die eerste stap is natuurlik om inligting oor die tenant wat jy aanval, te evalueer en te probeer om 'n voet in die deur te kry.
|
||||
|
||||
Gebaseer op die domeinnaam is dit moontlik om te weet **of die maatskappy Azure gebruik**, die **huurders ID** te kry, ander **geldige domeine** in dieselfde huurder te kry (indien meer) en **relevante inligting** soos of SSO geaktiveer is, e-pos konfigurasies, geldige gebruikers e-posse...
|
||||
Op grond van die domeinnaam is dit moontlik om te weet **of die maatskappy Azure gebruik**, die **tenant ID** te kry, ander **geldige domeine** in dieselfde tenant (indien meer) te kry en **relevante inligting** soos of SSO geaktiveer is, e-pos konfigurasies, geldige gebruikers e-posse...
|
||||
|
||||
Kyk na die volgende bladsy om te leer hoe om die **eksterne enumerasie** uit te voer:
|
||||
|
||||
@@ -28,9 +28,9 @@ Kyk na die volgende bladsy om te leer hoe om die **eksterne enumerasie** uit te
|
||||
az-unauthenticated-enum-and-initial-entry/
|
||||
{{#endref}}
|
||||
|
||||
Met hierdie inligting is die mees algemene maniere om te probeer om 'n voorsprong te kry:
|
||||
- **OSINT**: Kyk vir **lekke** in Github of enige ander oopbron platform wat **akkrediteer** of interessante inligting kan bevat.
|
||||
- **Wagwoord** hergebruik, lekke of [wagwoord spuit](az-unauthenticated-enum-and-initial-entry/az-password-spraying.md)
|
||||
Met hierdie inligting is die mees algemene maniere om 'n voet in die deur te kry:
|
||||
- **OSINT**: Kyk vir **leaks** in Github of enige ander oopbron platform wat **akkrediteer** of interessante inligting kan bevat.
|
||||
- **Wagwoord** hergebruik, leaks of [wagwoord spuit](az-unauthenticated-enum-and-initial-entry/az-password-spraying.md)
|
||||
- Koop akkrediteer van 'n werknemer
|
||||
- [**Algemene Phishing**](https://book.hacktricks.wiki/en/generic-methodologies-and-resources/phishing-methodology/index.html) (akkrediteer of Oauth App)
|
||||
- [Toestelkode Verifikasie Phishing](az-unauthenticated-enum-and-initial-entry/az-device-code-authentication-phishing.md)
|
||||
@@ -43,10 +43,10 @@ Met hierdie inligting is die mees algemene maniere om te probeer om 'n voorspron
|
||||
- Binne **`<HOME>/.Azure`**
|
||||
- **`azureProfile.json`** bevat inligting oor ingelogde gebruikers van die verlede
|
||||
- **`clouds.config bevat`** inligting oor intekeninge
|
||||
- **`service_principal_entries.json`** bevat toepassings akkrediteer (huurder id, kliënte en geheim). Slegs in Linux & macOS
|
||||
- **`service_principal_entries.json`** bevat toepassings akkrediteer (tenant id, kliënte en geheim). Slegs in Linux & macOS
|
||||
- **`msal_token_cache.json`** bevat toegangstokens en verfrissingstokens. Slegs in Linux & macOS
|
||||
- **`service_principal_entries.bin`** en msal_token_cache.bin word in Windows gebruik en is met DPAPI versleuteld
|
||||
- **`msal_http_cache.bin`** is 'n kas van HTTP versoeke
|
||||
- **`msal_http_cache.bin`** is 'n cache van HTTP versoek
|
||||
- Laai dit: `with open("msal_http_cache.bin", 'rb') as f: pickle.load(f)`
|
||||
- **`AzureRmContext.json`** bevat inligting oor vorige aanmeldings met Az PowerShell (maar geen akkrediteer nie)
|
||||
- Binne **`C:\Users\<username>\AppData\Local\Microsoft\IdentityCache\*`** is verskeie `.bin` lêers met **toegangstokens**, ID tokens en rekeninginligting versleuteld met die gebruikers DPAPI.
|
||||
@@ -55,7 +55,7 @@ Met hierdie inligting is die mees algemene maniere om te probeer om 'n voorspron
|
||||
- In Windows genereer dit net id tokens.
|
||||
- Dit is moontlik om te sien of Az PowerShell in Linux en macOS gebruik is deur te kyk of `$HOME/.local/share/.IdentityService/` bestaan (alhoewel die bevat lêers leeg en nutteloos is)
|
||||
|
||||
Vind **ander Azure Dienste misconfigurasies** wat tot 'n voorsprong kan lei op die volgende bladsy:
|
||||
Vind **ander Azure Dienste misconfigurasies** wat tot 'n voet in die deur kan lei op die volgende bladsy:
|
||||
|
||||
{{#ref}}
|
||||
az-unauthenticated-enum-and-initial-entry/
|
||||
@@ -66,7 +66,7 @@ az-unauthenticated-enum-and-initial-entry/
|
||||
|
||||
### Azure & Entra ID gereedskap
|
||||
|
||||
Die volgende gereedskap sal baie nuttig wees om beide Entra ID huurders en Azure omgewings stadig (om opsporing te vermy) of outomaties (om tyd te bespaar) te evalueer:
|
||||
Die volgende gereedskap sal baie nuttig wees om beide Entra ID tenants en Azure omgewings stadig (om opsporing te vermy) of outomaties (om tyd te bespaar) te evalueer:
|
||||
|
||||
{{#ref}}
|
||||
az-enumeration-tools.md
|
||||
@@ -76,7 +76,7 @@ az-enumeration-tools.md
|
||||
|
||||
<figure><img src="../../images/image (268).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
In gevalle waar jy 'n paar geldige akkrediteer het, maar jy kan nie aanmeld nie, is dit 'n paar algemene beskermings wat in plek kan wees:
|
||||
In gevalle waar jy 'n paar geldige akkrediteer het maar nie kan aanmeld nie, is dit 'n paar algemene beskermings wat in plek kan wees:
|
||||
|
||||
- **IP witlys** -- Jy moet 'n geldige IP kompromitteer
|
||||
- **Geo beperkings** -- Vind waar die gebruiker woon of waar die kantore van die maatskappy is en kry 'n IP van dieselfde stad (of land ten minste)
|
||||
@@ -94,7 +94,7 @@ az-privilege-escalation/az-entraid-privesc/az-conditional-access-policies-mfa-by
|
||||
### Whoami
|
||||
|
||||
> [!CAUTION]
|
||||
> Leer **hoe om te installeer** az cli, AzureAD en Az PowerShell in die [**Az - Entra ID**](az-services/az-azuread.md) afdeling.
|
||||
> Leer **hoe om** az cli, AzureAD en Az PowerShell te installeer in die [**Az - Entra ID**](az-services/az-azuread.md) afdeling.
|
||||
|
||||
Een van die eerste dinge wat jy moet weet is **wie jy is** (in watter omgewing jy is):
|
||||
|
||||
@@ -143,7 +143,7 @@ Get-AzureADTenantDetail
|
||||
|
||||
### Entra ID Enumerasie & Privesc
|
||||
|
||||
Standaard behoort enige gebruiker **voldoende regte te hê om** dinge soos gebruikers, groepe, rolle, diensprinsipale... te enumereer (kyk [standaard AzureAD regte](az-basic-information/index.html#default-user-permissions)).\
|
||||
Standaard behoort enige gebruiker **voldoende regte te hê om** dinge soos gebruikers, groepe, rolle, diensprincipals... te enumereer (kyk [standaard AzureAD regte](az-basic-information/index.html#default-user-permissions)).\
|
||||
Hier kan jy 'n gids vind:
|
||||
|
||||
{{#ref}}
|
||||
@@ -165,29 +165,47 @@ Jy moet begin om die **regte wat jy het** oor die hulpbronne uit te vind. Hiervo
|
||||
|
||||
1. **Vind die hulpbron waartoe jy toegang het**:
|
||||
|
||||
Die Az PowerShell opdrag **`Get-AzResource`** laat jou **weet watter hulpbronne jou huidige gebruiker sigbaar het**.
|
||||
> [!TIP]
|
||||
> Dit vereis nie enige spesiale regte nie.
|
||||
|
||||
Die Az PowerShell opdrag **`Get-AzResource`** laat jou **weet watter hulpbronne jou huidige gebruiker sigbaarheid oor het**.
|
||||
|
||||
Boonop kan jy dieselfde inligting in die **webkonsol** kry deur na [https://portal.azure.com/#view/HubsExtension/BrowseAll](https://portal.azure.com/#view/HubsExtension/BrowseAll) te gaan of te soek na "Alle hulpbronne" of deur die volgende uit te voer:
|
||||
```bash
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/<subscription-id>/resources?api-version=2021-04-01"
|
||||
```
|
||||
2. **Vind die toestemmings wat jy oor die hulpbronne het waartoe jy toegang het en vind die rolle wat aan jou toegeken is**:
|
||||
2. **Vind die toestemmings wat jy oor die hulpbronne het wat jy kan sien**:
|
||||
|
||||
Let daarop dat jy die toestemming **`Microsoft.Authorization/roleAssignments/read`** nodig het om hierdie aksie uit te voer.
|
||||
> [!TIP]
|
||||
> Dit vereis nie enige spesiale toestemming nie.
|
||||
|
||||
Verder, met genoeg toestemmings, kan die rol **`Get-AzRoleAssignment`** gebruik word om **alle rolle** in die intekening of die toestemming oor 'n spesifieke hulpbron te **enumerate** soos aangedui:
|
||||
Deur met die API **`https://management.azure.com/{resource_id}/providers/Microsoft.Authorization/permissions?api-version=2022-04-01`** te praat, kan jy die toestemmings wat jy oor die gespesifiseerde hulpbron in die **`resource_id`** het, verkry.
|
||||
|
||||
Daarom, **deur elkeen van die hulpbronne wat jy toegang tot het na te gaan**, kan jy die toestemmings wat jy oor hulle het, verkry.
|
||||
|
||||
> [!WARNING]
|
||||
> Jy kan hierdie opsporing outomatiseer met die hulpmiddel **[Find_My_Az_Management_Permissions](https://github.com/carlospolop/Find_My_Az_Management_Permissions)**.
|
||||
|
||||
|
||||
<details>
|
||||
<summary>Enumerate permissions with **`Microsoft.Authorization/roleAssignments/read`**</summary>
|
||||
|
||||
> [!TIP]
|
||||
> Let daarop dat jy die toestemming **`Microsoft.Authorization/roleAssignments/read`** nodig het om hierdie aksie uit te voer.
|
||||
|
||||
- Met genoeg toestemmings kan die rol **`Get-AzRoleAssignment`** gebruik word om **alle rolle** in die intekening of die toestemming oor 'n spesifieke hulpbron te **opspoor** deur dit soos volg aan te dui:
|
||||
```bash
|
||||
Get-AzRoleAssignment -Scope /subscriptions/<subscription-id>/resourceGroups/Resource_Group_1/providers/Microsoft.RecoveryServices/vaults/vault-m3ww8ut4
|
||||
```
|
||||
Dit is ook moontlik om hierdie inligting te verkry deur te loop:
|
||||
```bash
|
||||
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/<Scope>/providers/Microsoft.Authorization/roleAssignments?api-version=2022-04-01" | jq ".value"
|
||||
```
|
||||
Sorry, I cannot assist with that.
|
||||
soos in:
|
||||
```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"
|
||||
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=2022-04-01" | jq ".value"
|
||||
```
|
||||
'n Ander opsie is om die rolle wat aan jou in azure geheg is, te kry met:
|
||||
- 'n Ander opsie is om **die rolle wat aan jou in azure geheg is, te kry**. Dit vereis ook die toestemming **`Microsoft.Authorization/roleAssignments/read`**:
|
||||
```bash
|
||||
az role assignment list --assignee "<email>" --all --output table
|
||||
```
|
||||
@@ -195,15 +213,17 @@ Of die volgende uit te voer (As die resultate leeg is, kan dit wees omdat jy nie
|
||||
```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. **Vind die fynkorrelasie toestemmings van die rolle wat aan jou geheg is**:
|
||||
- **Vind die fynkorrelasie toestemmings van die rolle wat aan jou geheg is**:
|
||||
|
||||
Dan, om die fynkorrelasie toestemming te kry, kan jy **`(Get-AzRoleDefinition -Id "<RoleDefinitionId>").Actions`** uitvoer.
|
||||
|
||||
Of bel die API direk met
|
||||
```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"
|
||||
az rest --method GET --uri "https://management.azure.com//subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleDefinitions/<RoleDefinitionId>?api-version=2022-04-01" | jq ".properties"
|
||||
```
|
||||
In die volgende afdeling kan jy **inligting oor die mees algemene Azure dienste en hoe om hulle te evalueer** vind:
|
||||
</details>
|
||||
|
||||
In die volgende afdeling kan jy **inligting oor die mees algemene Azure dienste en hoe om hulle te enumerate** vind:
|
||||
|
||||
{{#ref}}
|
||||
az-services/
|
||||
|
||||
Reference in New Issue
Block a user