
Preuve de concept pour CVE-2026-22008 démontrant l'injection de couches AWS Lambda via des ARN non fiables, permettant l'exécution de code arbitraire et le vol d'identifiants dans les fonctions concernées.
# deploy_vulnerable_lambda.py - Lambda function using a layer from untrusted account
import boto3
lambda_client = boto3.client('lambda')
# Attacker publishes a public layer containing malicious code
# Victim function references the layer ARN
response = lambda_client.create_function(
FunctionName='victim-func',
Runtime='python3.9',
Role='arn:aws:iam::123456789012:role/lambda-role',
Handler='index.handler',
Code={'ZipFile': open('function.zip','rb').read()},
Layers=['arn:aws:lambda:us-east-1:123456789012:layer:poisoned:1'] # public, but owned by attacker
)
print("Function created with malicious layer")
Une fonction AWS Lambda inclut une couche Lambda provenant d'un ARN partagé publiquement mais non fiable. Le code de la couche s'exécute dans l'environnement d'exécution de la fonction, ce qui permet à l'éditeur de la couche de voler des identifiants, d'exfiltrer des données et d'exécuter du code arbitraire.
Déployez la fonction victime à l'aide du script vulnérable (nécessite un bac à sable AWS) :
python deploy_vulnerable_lambda.py
Le gestionnaire de la couche est invoqué à chaque requête, communiquant avec le serveur de l'attaquant.