AWS - Lambda Post Exploitation

Reading time: 5 minutes

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримка HackTricks

Lambda

Для отримання додаткової інформації див.:

AWS - Lambda Enum

Екфільтрація облікових даних Lambda

Lambda використовує змінні середовища для інжекції облікових даних під час виконання. Якщо ви можете отримати до них доступ (читанням /proc/self/environ або використавши вразливу функцію), ви можете користуватися ними самостійно. Вони зберігаються у стандартних іменах змінних AWS_SESSION_TOKEN, AWS_SECRET_ACCESS_KEY та AWS_ACCESS_KEY_ID.

За замовчуванням ці облікові дані мають право запису до cloudwatch log group (назва якої зберігається в AWS_LAMBDA_LOG_GROUP_NAME), а також створювати довільні log groups; проте функції Lambda часто мають додаткові права, призначені залежно від їхнього призначення.

lambda:Delete*

Атакувальник, якому надано lambda:Delete*, може видаляти Lambda functions, versions/aliases, layers, event source mappings та інші пов'язані конфігурації.

bash
aws lambda delete-function \
--function-name <LAMBDA_NAME>

Steal Others Lambda URL Requests

If an attacker somehow manage to get RCE inside a Lambda he will be able to steal other users HTTP requests to the lambda. If the requests contain sensitive information (cookies, credentials...) he will be able to steal them.

AWS - Lambda Steal Requests

Steal Others Lambda URL Requests & Extensions Requests

Abusing Lambda Layers it's also possible to abuse extensions and persist in the lambda but also steal and modify requests.

AWS - Abusing Lambda Extensions

AWS Lambda – VPC Egress Bypass

Force a Lambda function out of a restricted VPC by updating its configuration with an empty VpcConfig (SubnetIds=[], SecurityGroupIds=[]). The function will then run in the Lambda-managed networking plane, regaining outbound internet access and bypassing egress controls enforced by private VPC subnets without NAT.

AWS - Lambda VPC Egress Bypass

AWS Lambda – Runtime Pinning/Rollback Abuse

Abuse lambda:PutRuntimeManagementConfig to pin a function to a specific runtime version (Manual) or freeze updates (FunctionUpdate). This preserves compatibility with malicious layers/wrappers and can keep the function on an outdated, vulnerable runtime to aid exploitation and long-term persistence.

AWS - Lambda Runtime Pinning Abuse

AWS Lambda – Log Siphon via LoggingConfig.LogGroup Redirection

Abuse lambda:UpdateFunctionConfiguration advanced logging controls to redirect a function’s logs to an attacker-chosen CloudWatch Logs log group. This works without changing code or the execution role (most Lambda roles already include logs:CreateLogGroup/CreateLogStream/PutLogEvents via AWSLambdaBasicExecutionRole). If the function prints secrets/request bodies or crashes with stack traces, you can collect them from the new log group.

AWS - Lambda LoggingConfig Redirection

AWS - Lambda Function URL Public Exposure

Turn a private Lambda Function URL into a public unauthenticated endpoint by switching the Function URL AuthType to NONE and attaching a resource-based policy that grants lambda:InvokeFunctionUrl to everyone. This enables anonymous invocation of internal functions and can expose sensitive backend operations.

AWS - Lambda Function URL Public Exposure

AWS Lambda – Event Source Mapping Target Hijack

Abuse UpdateEventSourceMapping to change the target Lambda function of an existing Event Source Mapping (ESM) so that records from DynamoDB Streams, Kinesis, or SQS are delivered to an attacker-controlled function. This silently diverts live data without touching producers or the original function code.

AWS - Lambda Event Source Mapping Hijack

AWS Lambda – EFS Mount Injection data exfiltration

Abuse lambda:UpdateFunctionConfiguration to attach an existing EFS Access Point to a Lambda, then deploy trivial code that lists/reads files from the mounted path to exfiltrate shared secrets/config that the function previously couldn’t access.

AWS - Lambda EFS Mount Injection

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримка HackTricks