
Simula la rimanenza di memoria in cold-start serverless di CVE-2026-23007; dimostra come lo stato globale persistente tra le invocazioni Lambda possa far trapelare segreti tra le esecuzioni.
# lambda_remanence.py - Simulated Lambda environment reuse
import os, secrets
def first_invocation():
# Simulates storing a secret in a global variable
global SECRET
SECRET = secrets.token_hex(16)
return "Initialized"
def second_invocation():
# Another function in same container? Actually, separate invocations share memory.
# Here we just read the global if it exists
global SECRET
return SECRET if 'SECRET' in globals() else "No secret"
print("Cold start: ", first_invocation())
print("Warm start: ", second_invocation())
Le piattaforme serverless riutilizzano gli ambienti di esecuzione (container) tra diverse invocazioni di funzioni senza azzerare la memoria globale. Una funzione di un attaccante che condivide lo stesso host sottostante (o addirittura lo stesso account) potrebbe accedere a residui di esecuzioni precedenti, causando la fuga di segreti.
Esegui:
python lambda_remanence.py
La seconda invocazione legge il segreto impostato durante la prima.