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

This commit is contained in:
Translator
2025-01-26 15:09:57 +00:00
parent 171cc3482a
commit 23bb3b7127
3 changed files with 44 additions and 38 deletions

View File

@@ -10,17 +10,17 @@ Leer die basiese beginsels van Azure en Entra ID op die volgende bladsy:
az-basic-information/
{{#endref}}
## Azure Pentester/Red Team Metodologie
## Azure Pentester/Rooi Span 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.
Vanuit 'n Red Team perspektief is die **eerste stap om 'n Azure omgewing te kompromitteer** om 'n **voorsprong** te verkry.
Vanuit 'n Rooi Span perspektief is die **eerste stap om 'n Azure omgewing te kompromitteer** om 'n **voorsprong** te verkry.
### Eksterne enum & Begin Toegang
Die eerste stap is natuurlik om inligting oor die tenant wat jy aanval, te evalueer en te probeer om 'n voorsprong te kry.
Die eerste stap is natuurlik om inligting oor die huurder wat jy aanval, te evalueer en te probeer om 'n voorsprong te kry.
Gebaseer op 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...
Gebaseer op die domeinnaam is dit moontlik om te weet **of die maatskappy Azure gebruik**, die **huurder 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...
Kyk na die volgende bladsy om te leer hoe om die **eksterne enumerasie** uit te voer:
@@ -30,7 +30,7 @@ az-unauthenticated-enum-and-initial-entry/
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)
- **Wagwoord** hergebruik, lek 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)
@@ -42,11 +42,11 @@ Met hierdie inligting is die mees algemene maniere om te probeer om 'n voorspron
- As 'n ontwikkelaar se skootrekenaar gecompromitteer is ([WinPEAS en LinPEAS](https://github.com/peass-ng/PEASS-ng) kan hierdie inligting vind):
- Binne **`<HOME>/.Azure`**
- **`azureProfile.json`** bevat inligting oor ingelogde gebruikers van die verlede
- **`clouds.config contains`** inligting oor intekeninge
- **`service_principal_entries.json`** bevat toepassings akkrediteer (tenant id, kliënte en geheim). Slegs in Linux & macOS
- **`clouds.config bevat`** inligting oor intekeninge
- **`service_principal_entries.json`** bevat toepassings akkrediteer (huurder 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.
@@ -66,17 +66,17 @@ az-unauthenticated-enum-and-initial-entry/
### Azure & Entra ID gereedskap
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:
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:
{{#ref}}
az-enumeration-tools.md
{{#endref}}
### Bypass Aanmeldingsvoorwaardes
### Bypass Toegang Beleide
<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 moontlik in plek is:
In gevalle waar jy 'n paar geldige akkrediteer het, maar jy kan nie aanmeld nie, is dit 'n paar algemene beskermings wat moontlik in plek is:
- **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)
@@ -85,6 +85,12 @@ In gevalle waar jy 'n paar geldige akkrediteer het maar jy kan nie aanmeld nie,
Nadat jy dit omseil het, mag jy in staat wees om terug te keer na jou aanvanklike opstelling en jy sal steeds toegang hê.
Kyk:
{{#ref}}
az-privilege-escalation/az-entraid-privesc/az-conditional-access-policies-mfa-bypass.md
{{#endref}}
### Whoami
> [!CAUTION]
@@ -135,23 +141,23 @@ Get-AzureADTenantDetail
{{#endtabs }}
### Entra ID Enumerasie & Privilege Escalation
### Entra ID Enumerasie & Privesc
Standaard behoort enige gebruiker **voldoende regte te hê om** dinge soos gebruikers, groepe, rolle, diensprincipals... te enumerate (kyk [default AzureAD permissions](az-basic-information/index.html#default-user-permissions)).\
Standaard behoort enige gebruiker **voldoende regte te hê om** dinge soos gebruikers, groepe, rolle, diensprincipals... te enumerate (kyk [standaard AzureAD regte](az-basic-information/index.html#default-user-permissions)).\
Hier kan jy 'n gids vind:
{{#ref}}
az-services/az-azuread.md
{{#endref}}
Kyk na die **Post-Exploitation tools** om gereedskap te vind om regte in Entra ID te verhoog soos **AzureHound:**
Kyk na die **Post-Exploitation gereedskap** om gereedskap te vind om regte in Entra ID te eskaleer soos **AzureHound:**
{{#ref}}
az-enumeration-tools.md#automated-post-exploitation-tools
{{#endref}}
### Enumereer Azure Dienste
### Azure Enumerasie
Sodra jy weet wie jy is, kan jy begin om die **Azure dienste waartoe jy toegang het** te enumerate.
@@ -161,7 +167,7 @@ Jy moet begin om die **regte wat jy het** oor die hulpbronne uit te vind. Hiervo
Die Az PowerShell opdrag **`Get-AzResource`** laat jou **weet watter hulpbronne jou huidige gebruiker sigbaar 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 "All resources" of deur uit te voer: `az rest --method GET --url "https://management.azure.com/subscriptions/<subscription-id>/resources?api-version=2021-04-01"`
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 uit te voer: `az rest --method GET --url "https://management.azure.com/subscriptions/<subscription-id>/resources?api-version=2021-04-01"`
2. **Vind die regte wat jy het oor die hulpbronne waartoe jy toegang het en vind die rolle wat aan jou toegeken is**:
@@ -186,11 +192,11 @@ In die volgende afdeling kan jy **inligting vind oor die mees algemene Azure die
az-services/
{{#endref}}
### Privilege Escalation, Post-Exploitation & Persistensie in Azure Dienste
### Privilege Eskalasie, Post-Exploitation & Volharding
Sodra jy weet hoe die Azure omgewing gestruktureer is en watter dienste gebruik word, kan jy begin soek na maniere om **regte te verhoog, lateraal te beweeg, ander post-exploitation aanvalle uit te voer en volharding te handhaaf**.
Sodra jy weet hoe die Azure omgewing gestruktureer is en watter dienste gebruik word, kan jy begin soek na maniere om **regte te eskaleer, lateraal te beweeg, ander post-exploitation aanvalle uit te voer en volharding te handhaaf**.
In die volgende afdeling kan jy inligting vind oor hoe om regte te verhoog in die mees algemene Azure dienste:
In die volgende afdeling kan jy inligting vind oor hoe om regte te eskaleer in die mees algemene Azure dienste:
{{#ref}}
az-privilege-escalation/

View File

@@ -2,19 +2,19 @@
{{#include ../../../banners/hacktricks-training.md}}
### Onwettige Toestemmingstoekenning
### OAuth Toepassing
Standaard kan enige gebruiker 'n toepassing in Azure AD registreer. So kan jy 'n toepassing registreer (slegs vir die teikenhuurder) wat hoë impak toestemmings benodig met administratortoestemming (goedkeur dit as jy die admin is) - soos om e-pos namens 'n gebruiker te stuur, rolbestuur, ens. Dit sal ons in staat stel om **phishing-aanvalle** uit te voer wat baie **vrugbaar** sal wees in geval van sukses.
Deur die standaard kan enige gebruiker 'n toepassing in Entra ID registreer. So kan jy 'n toepassing registreer (slegs vir die teiken huur) wat hoë impak toestemmings benodig met administratorkonsent (en dit goedkeur as jy die admin is) - soos om e-pos namens 'n gebruiker te stuur, rolbestuur, ens. Dit sal ons toelaat om **phishing-aanvalle** uit te voer wat baie **vrugbaar** sal wees in die geval van sukses.
Boonop kan jy ook daardie toepassing met jou gebruiker aanvaar as 'n manier om toegang daaroor te behou.
### Toepassings en Diensbeginsels
### Toepassings en Diens Prinsipale
Met voorregte van Toepassing Administrateur, GA of 'n pasgemaakte rol met microsoft.directory/applications/credentials/update toestemmings, kan ons geloofsbriewe (geheime of sertifikaat) aan 'n bestaande toepassing voeg.
Met voorregte van Toepassing Administrateur, GA of 'n pasgemaakte rol met microsoft.directory/applications/credentials/update toestemmings, kan ons kredensiale (geheime of sertifikaat) aan 'n bestaande toepassing voeg.
Dit is moontlik om **'n toepassing met hoë toestemmings te teiken** of **'n nuwe toepassing** met hoë toestemmings toe te voeg.
Dit is moontlik om 'n **toepassing met hoë toestemmings** te **teiken** of 'n **nuwe toepassing** met hoë toestemmings toe te voeg.
'n Interessante rol om by die toepassing te voeg, sou die **Privileged authentication administrator role** wees, aangesien dit toelaat om die wagwoord van Globale Administrators te **herstel**.
'n Interessante rol om by die toepassing te voeg, sou die **Privileged authentication administrator role** wees, aangesien dit toelaat om die **wagwoord te herstel** van Globale Administrators.
Hierdie tegniek laat ook toe om **MFA te omseil**.
```bash
@@ -28,9 +28,9 @@ Connect-AzAccount -ServicePrincipal -Tenant <TenantId> -CertificateThumbprint <T
```
### Federasie - Token Onderteken Sertifikaat
Met **DA bevoegdhede** op on-prem AD, is dit moontlik om **nuwe Token onderteken** en **Token Decrypt sertifikate** te skep en in te voer wat 'n baie lang geldigheid het. Dit sal ons in staat stel om **in te teken as enige gebruiker** wie se ImuutableID ons ken.
Met **DA bevoegdhede** op on-prem AD, is dit moontlik om **nuwe Token onderteken** en **Token Decrypt sertifikate** te skep en in te voer wat 'n baie lang geldigheid het. Dit sal ons in staat stel om **in te log as enige gebruiker** wie se ImuutableID ons ken.
**Voer** die onderstaande opdrag uit as **DA op die ADFS bediener(s)** om nuwe sertifikate te skep (standaard wagwoord 'AADInternals'), voeg dit by ADFS, deaktiveer outomatiese rolverdeling en herbegin die diens:
**Voer** die onderstaande opdrag uit as **DA op die ADFS bediener(s)** om nuwe sertifikate te skep (standaard wagwoord 'AADInternals'), voeg dit by ADFS, deaktiveer outomatiese hernuwing en herbegin die diens:
```bash
New-AADIntADFSSelfSignedCertificates
```

View File

@@ -158,7 +158,7 @@ Connect-AzureAD -AccountId test@corp.onmicrosoft.com -AadAccessToken $token
Wanneer jy **aanmeld** via **CLI** in Azure met enige program, gebruik jy 'n **Azure-toepassing** van 'n **tenant** wat aan **Microsoft** behoort. Hierdie Toepassings, soos die wat jy in jou rekening kan skep, **het 'n kliënt-id**. Jy **sal nie al hulle kan sien nie** in die **toegelate toepassingslys** wat jy in die konsole kan sien, **maar hulle is standaard toegelaat**.
Byvoorbeeld, 'n **powershell-skrip** wat **authentiseer** gebruik 'n app met kliënt-id **`1950a258-227b-4e31-a9cf-717495945fc2`**. Selfs al verskyn die app nie in die konsole nie, kan 'n stelselaanvoerder **daardie toepassing blokkeer** sodat gebruikers nie toegang kan verkry nie met gereedskap wat via daardie App verbind.
Byvoorbeeld, 'n **powershell-skrip** wat **authentiseer** gebruik 'n app met kliënt-id **`1950a258-227b-4e31-a9cf-717495945fc2`**. Selfs al verskyn die app nie in die konsole nie, kan 'n stelselsadministrateur **daardie toepassing blokkeer** sodat gebruikers nie toegang kan verkry nie met gereedskap wat via daardie App verbind.
Daar is egter **ander kliënt-ids** van toepassings wat **jou sal toelaat om met Azure te verbind**:
```bash
@@ -309,7 +309,7 @@ $password = "ThisIsTheNewPassword.!123" | ConvertTo- SecureString -AsPlainText
```
### MFA & Voorwaardelike Toegang Beleide
Dit word sterk aanbeveel om MFA by elke gebruiker toe te voeg, egter, sommige maatskappye sal dit nie instel of mag dit instel met 'n Voorwaardelike Toegang: Die gebruiker sal **MFA vereis word as** dit vanaf 'n spesifieke ligging, blaaiers of **sekere voorwaarde** aanmeld. Hierdie beleide, as dit nie korrek geconfigureer is nie, mag geneig wees tot **omseilings**. Kontroleer:
Dit word sterk aanbeveel om MFA by elke gebruiker toe te voeg, maar sommige maatskappye sal dit nie instel nie of mag dit instel met 'n Voorwaardelike Toegang: Die gebruiker sal **MFA vereis word as** dit vanaf 'n spesifieke ligging, blaaier of **sekere voorwaarde** aanmeld. Hierdie beleide, as dit nie korrek geconfigureer is nie, mag vatbaar wees vir **omseilings**. Kontroleer:
{{#ref}}
../az-privilege-escalation/az-entraid-privesc/az-conditional-access-policies-mfa-bypass.md
@@ -491,11 +491,11 @@ Get-AzureADServicePrincipal -ObjectId <id> | Get-AzureADServicePrincipalMembersh
{{#endtabs }}
> [!WARNING]
> Die Eienaar van 'n Diens Prinsipaal kan sy wagwoord verander.
> Die eienaar van 'n dienshoof kan sy wagwoord verander.
<details>
<summary>lys en probeer om 'n kliënt geheim by elke Enterprise App te voeg</summary>
<summary>lys en probeer om 'n kliënt geheim by elke ondernemingsapp te voeg</summary>
```bash
# Just call Add-AzADAppSecret
Function Add-AzADAppSecret
@@ -913,12 +913,12 @@ Get-AzureADMSScopedRoleMembership -Id <id> | fl #Get role ID and role members
### Privileged Identity Management (PIM)
Privileged Identity Management (PIM) in Azure help om **oormatige voorregte** te voorkom wat onnodig aan gebruikers toegeken word.
Privileged Identity Management (PIM) in Azure help om **oormatige voorregte** aan gebruikers onnodig toe te ken.
Een van die hoofkenmerke wat deur PIM verskaf word, is dat dit toelaat om nie rolle aan principals toe te ken wat konstant aktief is nie, maar hulle **verkieslik te maak vir 'n tydperk (bv. 6 maande)**. Dan, wanneer die gebruiker daardie rol wil aktiveer, moet hy daarvoor vra en die tyd aan dui wat hy die voorreg nodig het (bv. 3 ure). Dan moet 'n **admin die versoek goedkeur**.\
Let daarop dat die gebruiker ook kan vra om die tyd te **verleng**.
Boonop, **PIM stuur e-posse** wanneer 'n voorregte rol aan iemand toegeken word.
Boonop **stuur PIM e-posse** wanneer 'n voorregte rol aan iemand toegeken word.
<figure><img src="../../../images/image (354).png" alt=""><figcaption></figcaption></figure>
@@ -930,10 +930,10 @@ Wanneer PIM geaktiveer is, is dit moontlik om elke rol met sekere vereistes te k
- Vereis regverdigheid op aktivering
- Vereis kaartjie-inligting op aktivering
- Vereis goedkeuring om te aktiveer
- Maks tyd om die verkieslike toewysings te laat verval
- Nog baie meer konfigurasie oor wanneer en wie kennisgewings moet ontvang wanneer sekere aksies met daardie rol gebeur
- Maks tyd om die verkieslike toekennings te laat verval
- Nog baie meer konfigurasie oor wanneer en aan wie om kennisgewings te stuur wanneer sekere aksies met daardie rol gebeur
### Voorwaardelike Toegang Beleide <a href="#title-text" id="title-text"></a>
### Voorwaardelike Toegang Beleide
Kontroleer:
@@ -941,9 +941,9 @@ Kontroleer:
../az-privilege-escalation/az-entraid-privesc/az-conditional-access-policies-mfa-bypass.md
{{#endref}}
### Entra Identiteitsbeskerming <a href="#title-text" id="title-text"></a>
### Entra Identiteitsbeskerming
Entra Identiteitsbeskerming is 'n sekuriteitsdiens wat toelaat om **te detecteer wanneer 'n gebruiker of 'n aanmelding te riskant is** om aanvaar te word, wat toelaat om die gebruiker of die aanmeldpoging te **blokkeer**.
Entra Identiteitsbeskerming is 'n sekuriteitsdiens wat toelaat om te **ontdek wanneer 'n gebruiker of 'n aanmelding te riskant is** om aanvaar te word, wat toelaat om die gebruiker of die aanmeldpoging te **blokkeer**.
Dit laat die admin toe om dit te konfigureer om **pogings te blokkeer** wanneer die risiko "Laag en bo", "Medium en bo" of "Hoog" is. Alhoewel, standaard is dit heeltemal **deaktiveer**: