1.2 KiB
AWS Lambda – Runtime Pinning/Rollback Abuse via PutRuntimeManagementConfig
{{#include ../../../../banners/hacktricks-training.md}}
Abusare di lambda:PutRuntimeManagementConfig per fissare una funzione su una specifica versione del runtime (Manual) o bloccare gli aggiornamenti (FunctionUpdate). Questo preserva la compatibilità con layer/wrapper malevoli e può mantenere la funzione su un runtime obsoleto e vulnerabile per facilitare lo sfruttamento e la persistenza a lungo termine.
Requisiti: lambda:InvokeFunction, logs:FilterLogEvents, lambda:PutRuntimeManagementConfig, lambda:GetRuntimeManagementConfig.
Esempio (us-east-1):
- Invocare:
aws lambda invoke --function-name /tmp/ping.json --payload {} --region us-east-1 > /dev/null; sleep 5 - Bloccare gli aggiornamenti:
aws lambda put-runtime-management-config --function-name --update-runtime-on FunctionUpdate --region us-east-1 - Verificare:
aws lambda get-runtime-management-config --function-name --region us-east-1
Facoltativamente, è possibile fissare una versione specifica del runtime estraendo l'ARN della Runtime Version dai log INIT_START e usando --update-runtime-on Manual --runtime-version-arn <arn>.
{{#include ../../../../banners/hacktricks-training.md}}