AWS - API Gateway Post Exploitation
Last updated
Last updated
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Vir meer inligting, kyk:
AWS - API Gateway EnumJy kan 'n eindpunt skep in https://us-east-1.console.aws.amazon.com/vpc/home#CreateVpcEndpoint met die diens com.amazonaws.us-east-1.execute-api
, die eindpunt blootstel in 'n netwerk waar jy toegang het (potensieel via 'n EC2 masjien) en 'n sekuriteitsgroep toewys wat alle verbindings toelaat.
Dan, vanaf die EC2 masjien sal jy in staat wees om toegang tot die eindpunt te verkry en dus die gateway API aan te roep wat voorheen nie blootgestel was nie.
Hierdie tegniek is gevind in hierdie CTF skrywe.
Soos aangedui in die AWS dokumentasie in die PassthroughBehavior
afdeling, is die waarde WHEN_NO_MATCH
, wanneer die Content-Type kop van die versoek nagegaan word, sal die versoek na die agterkant deurgegee word sonder enige transformasie.
Daarom, in die CTF het die API Gateway 'n integrasiesjabloon gehad wat die vlag verhinder het om uit te lek in 'n antwoord wanneer 'n versoek met Content-Type: application/json
gestuur is:
egter, om 'n versoek te stuur met Content-type: text/json
sou daardie filter voorkom.
Laastens, aangesien die API Gateway slegs Get
en Options
toegelaat het, was dit moontlik om 'n arbitrêre dynamoDB-navraag te stuur sonder enige beperking deur 'n POST-versoek met die navraag in die liggaam te stuur en die koptekst X-HTTP-Method-Override: GET
te gebruik:
In die Enumerasie afdeling kan jy sien hoe om die gebruik plan van die sleutels te verkry. As jy die sleutel het en dit is beperk tot X gebruike per maand, kan jy dit net gebruik en 'n DoS veroorsaak.
Die API Sleutel moet net ingesluit wees in 'n HTTP kop genaamd x-api-key
.
apigateway:UpdateGatewayResponse
, apigateway:CreateDeployment
'n Aanvaller met die regte apigateway:UpdateGatewayResponse
en apigateway:CreateDeployment
kan 'n bestaande Gateway Response wysig om pasgemaakte koppe of respons sjablone in te sluit wat sensitiewe inligting lek of kwaadwillige skripte uitvoer.
Potensiële Impak: Lek van sensitiewe inligting, uitvoering van kwaadwillige skripte, of ongemagtigde toegang tot API hulpbronne.
Benodig toetsing
apigateway:UpdateStage
, apigateway:CreateDeployment
'n Aanvaller met die regte apigateway:UpdateStage
en apigateway:CreateDeployment
kan 'n bestaande API Gateway fase wysig om verkeer na 'n ander fase te herlei of die kasinstellings te verander om ongemagtigde toegang tot gekapte data te verkry.
Potensiële Impak: Onbevoegde toegang tot gekapte data, onderbreking of onderskep van API-verkeer.
Benodig toetsing
apigateway:PutMethodResponse
, apigateway:CreateDeployment
'n Aanvaller met die toestemmings apigateway:PutMethodResponse
en apigateway:CreateDeployment
kan die metode-antwoorde van 'n bestaande API Gateway REST API-metode wysig om pasgemaakte koptekste of antwoordtemplates in te sluit wat sensitiewe inligting lek of kwaadwillige skripte uitvoer.
Potensiële Impak: Lek van sensitiewe inligting, uitvoering van kwaadwillige skripte, of ongemagtigde toegang tot API-hulpbronne.
Benodig toetsing
apigateway:UpdateRestApi
, apigateway:CreateDeployment
'n Aanvaller met die regte apigateway:UpdateRestApi
en apigateway:CreateDeployment
kan die API Gateway REST API-instellings wysig om logging te deaktiveer of die minimum TLS-weergawe te verander, wat moontlik die sekuriteit van die API verzwak.
Potensiële Impak: Verswakking van die sekuriteit van die API, wat moontlik ongeoorloofde toegang toelaat of sensitiewe inligting blootstel.
Benodig toetsing
apigateway:CreateApiKey
, apigateway:UpdateApiKey
, apigateway:CreateUsagePlan
, apigateway:CreateUsagePlanKey
'n Aanvaller met toestemmings apigateway:CreateApiKey
, apigateway:UpdateApiKey
, apigateway:CreateUsagePlan
, en apigateway:CreateUsagePlanKey
kan nuwe API sleutels skep, dit met gebruiksplanne assosieer, en dan hierdie sleutels gebruik vir ongeoorloofde toegang tot API's.
Potensiële Impak: Ongeoorloofde toegang tot API-hulpbronne, omseiling van sekuriteitsbeheer.
Benodig toetsing
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)