AWS - Lambda Post Exploitation
Reading time: 5 minutes
tip
Impara e pratica il hacking AWS: HackTricks Training AWS Red Team Expert (ARTE)
HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP:  HackTricks Training GCP Red Team Expert (GRTE)
HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure:
Impara e pratica il hacking Azure:  HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks Training Azure Red Team Expert (AzRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos su github.
Lambda
Per maggiori informazioni consulta:
Esfiltrare le credenziali di Lambda
Lambda usa le variabili d'ambiente per iniettare le credenziali a runtime. Se puoi accedervi (leggendo /proc/self/environ o usando la funzione vulnerabile stessa), puoi usarle tu stesso. Risiedono nelle variabili di default AWS_SESSION_TOKEN, AWS_SECRET_ACCESS_KEY e AWS_ACCESS_KEY_ID.
Per impostazione predefinita, queste hanno accesso per scrivere in un cloudwatch log group (il cui nome è memorizzato in AWS_LAMBDA_LOG_GROUP_NAME) e per creare log group arbitrari; tuttavia le funzioni lambda spesso hanno permessi aggiuntivi assegnati in base al loro uso previsto.
lambda:Delete*
Un attacker a cui è concesso lambda:Delete* può eliminare Lambda functions, versions/aliases, layers, event source mappings e altre configurazioni associate.
aws lambda delete-function \
--function-name <LAMBDA_NAME>
Steal Others Lambda URL Requests
Se un attacker in qualche modo riesce a ottenere RCE all'interno di una Lambda, potrà rubare le richieste HTTP di altri utenti verso la lambda. Se le richieste contengono informazioni sensibili (cookies, credentials...) potrà sottrarle.
Steal Others Lambda URL Requests & Extensions Requests
Abusing Lambda Layers è anche possibile abusare delle extensions e persistere nella lambda ma anche rubare e modificare le richieste.
AWS - Abusing Lambda Extensions
AWS Lambda – VPC Egress Bypass
Forza una Lambda function fuori da una VPC ristretta aggiornando la sua configurazione con un VpcConfig vuoto (SubnetIds=[], SecurityGroupIds=[]). La function verrà eseguita nel networking plane gestito da Lambda, recuperando l'accesso Internet in uscita e bypassando i controlli di egress imposti dai subnet privati della VPC senza NAT.
AWS - Lambda VPC Egress Bypass
AWS Lambda – Runtime Pinning/Rollback Abuse
Abusa di lambda:PutRuntimeManagementConfig per vincolare una function a una specifica versione del runtime (Manual) o bloccare gli aggiornamenti (FunctionUpdate). Questo preserva la compatibilità con layer/wrapper malevoli e può mantenere la function su un runtime obsoleto e vulnerabile per facilitare lo sfruttamento e la persistenza a lungo termine.
AWS - Lambda Runtime Pinning Abuse
AWS Lambda – Log Siphon via LoggingConfig.LogGroup Redirection
Abusa dei controlli di logging avanzati di lambda:UpdateFunctionConfiguration per reindirizzare i log di una function verso un log group di CloudWatch Logs scelto dall'attacker. Questo funziona senza cambiare il codice o l'execution role (la maggior parte dei ruoli Lambda include già logs:CreateLogGroup/CreateLogStream/PutLogEvents tramite AWSLambdaBasicExecutionRole). Se la function stampa secrets/request bodies o va in crash con stack traces, puoi raccoglierli dal nuovo log group.
AWS - Lambda LoggingConfig Redirection
AWS - Lambda Function URL Public Exposure
Trasforma una Lambda Function URL privata in un endpoint pubblico non autenticato impostando il Function URL AuthType su NONE e allegando una resource-based policy che concede lambda:InvokeFunctionUrl a chiunque. Questo permette invocazioni anonime di function interne e può esporre operazioni backend sensibili.
AWS - Lambda Function URL Public Exposure
AWS Lambda – Event Source Mapping Target Hijack
Abusa di UpdateEventSourceMapping per cambiare la target Lambda function di un Event Source Mapping (ESM) esistente in modo che i record da DynamoDB Streams, Kinesis o SQS vengano consegnati a una function controllata dall'attacker. Questo devia silenziosamente i dati live senza toccare i producer o il codice della function originale.
AWS - Lambda Event Source Mapping Hijack
AWS Lambda – EFS Mount Injection data exfiltration
Abusa di lambda:UpdateFunctionConfiguration per collegare un EFS Access Point esistente a una Lambda, poi deploya codice semplice che elenca/legge file dal path montato per esfiltrare shared secrets/config a cui la function prima non poteva accedere.
AWS - Lambda EFS Mount Injection
tip
Impara e pratica il hacking AWS: HackTricks Training AWS Red Team Expert (ARTE)
HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP:  HackTricks Training GCP Red Team Expert (GRTE)
HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure:
Impara e pratica il hacking Azure:  HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks Training Azure Red Team Expert (AzRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos su github.
 HackTricks Cloud
HackTricks Cloud