Az - API Management
Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Basic Information
Azure API Management (APIM) je potpuno upravljana usluga koja nudi jedinstvenu platformu za objavljivanje, zaštitu, transformaciju, upravljanje i nadgledanje APIs. Omogućava organizacijama da centralizuju svoju API strategiju i obezbede dosledno upravljanje, performanse i bezbednost za sve svoje servise. Delujući kao apstraktni sloj između backend servisa i potrošača API-ja, APIM pojednostavljuje integraciju i poboljšava održavanje, dok pruža ključne operativne i bezbednosne funkcionalnosti.
Core Concepts
The API Gateway služi kao jedinstvena ulazna tačka za sav API saobraćaj, obavljajući funkcije kao što su rutiranje zahteva ka backend servisima, primena ograničenja broja poziva, keširanje odgovora i upravljanje autentifikacijom i autorizacijom. Ovaj gateway je potpuno hostovan i upravljan od strane Azure-a, što obezbeđuje visoku dostupnost i skalabilnost.
The Developer Portal pruža self-service okruženje gde potrošači API-ja mogu otkriti dostupne API-je, čitati dokumentaciju i testirati endpoint-e. Pomaže u ubrzanju onboardinga nudeći interaktivne alate i pristup informacijama o pretplatama.
The Management Portal (Management Plane) koriste administratori za konfigurisanje i održavanje APIM servisa. Odatle korisnici mogu definisati API-je i operacije, konfigurisati kontrolu pristupa, primenjivati politike, upravljati korisnicima i organizovati API-je u proizvode. Ovaj portal centralizuje administraciju i obezbeđuje dosledno upravljanje API-jem.
Authentication and Authorization
Azure API Management podržava više mehanizama autentifikacije za zaštitu pristupa API-ju. To uključuje subscription keys, OAuth 2.0 tokens i client certificates. APIM se takođe integriše nativno sa Microsoft Entra ID, omogućavajući enterprise-level upravljanje identitetom i siguran pristup kako API-jima tako i backend servisima.
Policies
Policies u APIM omogućavaju administratorima da prilagode obradu zahteva i odgovora na različitim granularnostima, uključujući nivo service, API, operation, ili product. Kroz policies moguće je primeniti JWT token validation, transformisati XML ili JSON payload-e, primeniti rate limiting, ograničiti pozive po IP adresi ili autentifikovati prema backend servisima koristeći managed identities. Policies su veoma fleksibilne i predstavljaju jednu od ključnih prednosti API Management platforme, omogućavajući finu kontrolu izvršnog ponašanja bez izmene backend koda.
Named Values
Servis pruža mehanizam nazvan Named Values, koji omogućava čuvanje konfiguracionih informacija kao što su secrets, API keys, ili druge vrednosti potrebne policies.
Ove vrednosti se mogu čuvati direktno unutar APIM-a ili bezbedno referencirati iz Azure Key Vault. Named Values podstiču bezbedno i centralizovano upravljanje konfiguracionim podacima i pojednostavljuju pisanje policies omogućavajući ponovo upotrebljive reference umesto hardkodiranih vrednosti.
Networking and Security Integration
Azure API Management se besprekorno integriše sa virtual network environments, omogućavajući privatnu i sigurnu konektivnost do backend sistema.
Kada je deploy-ovan unutar Virtual Network (VNet), APIM može pristupiti internim servisima bez njihove javne izloženosti. Servis takođe omogućava konfigurisanje custom certificates za podršku mutual TLS authentication sa backend servisima, poboljšavajući bezbednost u scenarijima gde je potrebna stroga validacija identiteta.
Ove mrežne funkcionalnosti čine APIM pogodnim kako za cloud-native, tako i za hybrid architectures.
Enumerate
Za enumeraciju APIM servisa:
# Lists all Named Values configured in the Azure API Management instance
az apim nv list --resource-group <resource-group> --service-name <service-name>
# Retrieves all policies applied at the API level in raw XML format
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>/apis/<api-id>/policies/?api-version=2024-05-01&format=rawxml"
# Retrieves the effective policy for a specific API in raw XML format
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>/apis/<api-id>/policies/policy?api-version=2024-05-01&format=rawxml"
# Gets the configuration details of the APIM service instance
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<apim>?api-version=2024-05-01"
# Lists all backend services registered in the APIM instance
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>/backends?api-version=2024-05-01"
# Retrieves details of a specific backend service
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>/backends/<backend-id>?api-version=2024-05-01"
# Gets general information about the APIM service
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>?api-version=2024-05-01"
# Calls an exposed API endpoint through the APIM gateway
curl https://<apim>.azure-api.net/<api-path>
Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
HackTricks Cloud

