
Proof-of-concept для CVE-2026-22008, демонстрирующий инъекцию слоёв AWS Lambda через недоверенные ARN, что позволяет выполнять произвольный код и похищать учётные данные в затронутых функциях.
# 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")
Функция AWS Lambda включает слой Lambda из общедоступного, но недоверенного ARN. Код слоя выполняется внутри среды выполнения функции, что позволяет издателю слоя красть учётные данные, экфильтровать данные и выполнять произвольный код.
Разверните функцию жертвы с помощью уязвимого скрипта (требуется AWS-песочница):
python deploy_vulnerable_lambda.py
Обработчик слоя вызывается при каждом запросе, «звоня домой».