گروهی از پژوهشگران دانشگاههای Georgia Tech، Purdue و پژوهشکدهٔ Synkhronix حملهای جانبی (side-channel) با نام TEE.Fail معرفی کردهاند که قادر است اسرارِ درون محیطهای اجرای مورد اعتماد (TEE — Trusted Execution Environments) پردازندهها را استخراج کند. این شامل پلتفرمهای معروفی مانند Intel SGX و TDX و همچنین قابلیتهای AMD مثل SEV-SNP (با Ciphertext Hiding) میشود.
نقطهٔ درد این حمله: پژوهشگران با استفاده از دستگاهی نسبتاً ارزان (کمتر از ۱۰۰۰ دلار از قطعات تجاری) میتوانند ترافیک حافظهٔ DDR5 را بین CPU و DRAM بازنظارت کنند و عملاً کل حافظهٔ منتقلشده را فیزیکی «مشاهده» کنند — عملی که پیش از این علیه DDR4 هم نشان داده شده بود، اما TEE.Fail اولین حملهٔ عملیاتی علیه DDR5 است.
حمله TEE.Fail چگونه کار میکند؟
حمله از طریق یک «interposition device» عمل میکند که بین باس حافظهٔ DDR5 قرار میگیرد و تراکنشهای خواندن/نوشتن را ضبط میکند. (اصطلاح فنی: bus interposition)
پژوهشگران نشان دادند که حالتهای رمزنگاری مورد استفاده (مثلاً AES-XTS) در پیادهسازیهای فعلی Intel/AMD «deterministic» هستند و این کافی نیست که از حملهٔ فیزیکی جلوگیری کند.
با تحلیل این ترافیک فیزیکی میتوان اطلاعات حساس را استخراج کرد: از جمله کلیدهای ECDSA مربوط به attestation که در Provisioning Certification Enclave (PCE) نگهداری میشوند.
استخراج این کلیدها میتواند زنجیرهٔ اعتماد را بشکند: مهاجم میتواند یک کد یا داده در داخل یک CVM (Confidential VM / ماشین مجازی محرمانه) اجرا شده است را جعل کند، در حالی که بهواقع خارج از TEE اجرا شده — و در نتیجه بتواند خروجیهای جعلی یا دادههای لو رفته ارائه کند.
چه چیزهایی را هدف میگیرد؟
Intel: SGX و TDX (Trust Domain Extensions)
AMD: SEV-SNP با Ciphertext Hiding
تجهیزات حافظه: DDR5 سرورها
نرمافزارهای رمزنگاری مثل OpenSSL (مثال: استخراج کلیدهای signing مبتنی بر ECDSA)
پژوهش ها نشان میدهد که حتی اگر OpenSSL بهصورت constant-time (وقتثابت) نوشته شده باشد، و حتی اگر Ciphertext Hiding فعال باشد، این مکانیسمها از حملهٔ bus-interposition جلوگیری نمیکنند.
پیامدها — چه چیزی در معرض خطر است؟
استخراج کلیدهای attestation → امکان جعل «گواهی معتبر» (trusted attestation) → تضعیف کامل مکانیزمهای اعتماد سختافزاری.
دسترسی به کلیدهای خصوصی CVM → خواندن یا تغییر دادههای محرمانه و اجرای کدهای جعلی در ظاهر «مطمئن».
دور زدن محافظت سختافزاری GPU Confidential (مثلاً Nvidia) با سوءاستفاده از کلیدهای استخراجشده برای اجرا کردن بارهای AI بدون حفاظ TEE.
تهدید ویژه برای دیتاسنترها، سرویسهای ابری و محیطهایی که از Confidential Computing استفاده میکنند.
آیا این حمله در حالت عادی قابل انجام است؟
تا کنون گزارشی مبنی بر استفادهٔ عملیِ TEE.Fail در حملات واقعی (in the wild) منتشر نشده، اما اثبات مفهوم و روش اجرای آن نشان میدهد که حمله عملی و قابلاجرا است — خصوصاً از آنجا که تجهیزات لازم ارزان و در دسترساند.
راهحلها و توصیههای پژوهشگران
پژوهشگران میگویند بهترین دفاعها در لایهٔ نرمافزار هستند و باید از تغییرات در الگوریتمها و پیادهسازیها استفاده کرد، اما این تدابیر معمولاً هزینهبر خواهند بود:
اجتناب از رمزنگاری deterministic برای دادههای حساس در حافظه — استفاده از schemeهایی که هر بار خروجی متفاوت تولید کنند (non-deterministic / randomized encryption).
بازطراحی پروتکل attestation تا فاششدن یک کلید تخصیصیافته (provisioning key) نتواند کل اکوسیستم را فروبپاشاند؛ کلیدها بهصورت per-device یا per-product-line چرخانده شوند.
تغییرات در سختافزار یا پنلهای کنترل حافظه، اما اینها هزینه و زمانبر هستند و نیاز به همکاری تولیدکنندگان دارند.
افزایش محافظت فیزیکی روی سرورها و مدیریت سختافزاری دیتاسنترها تا دسترسی فیزیکی به باس حافظه محدود گردد.
پاسخ تولیدکنندگان
AMD: اعلام کرده که حملاتِ فیزیکی (physical vector attacks) خارج از دامنهٔ پشتیبانی/مدیریت SEV-SNP است و قصد ارائهٔ mitigation فیزیکی برای این حمله ندارد.
Intel: همچنان موضع مشابهی داشته و اشاره کرده که چنین حملات فیزیکی در چارچوب تهدیداتِ «خارج از دامنه» قرار میگیرند.
(توضیح: تولیدکنندگان معمولاً میگویند حملات فیزیکی و دسترسی به سختافزار در دیتاسنتر را مشتری باید کنترل کند؛ اما این پاسخ بهمعنای آن نیست که مشکل بیاهمیت است — بلکه نشاندهندهٔ چالش نهادینهای است بین حفاظت سختافزاری و تهدیدات فیزیکی.)
جمعبندی — چه کار باید کرد؟
برای محیطهای حساس (Confidential Computing، دیتاسنترها، ارائهدهندگان cloud): بازنگری فوری در ریسکهای فیزیکی و دسترسی به سختافزار. سرویسهای کلیدی باید از منظر فیزیکی محافظت و در برابر دسترسی بین-بس مقاوم شوند.
توسعهدهندگان و اپراتورها: بهروزرسانی پروتکلها و پیادهسازی countermeasureهای نرمافزاری علیه deterministic encryption را در برنامه قرار دهید.
نهادهای امنیتی و تولیدکنندگان سختافزار: باید همکاری کنند تا mitigations سختافزاری/firmware ارائه شود و مدلهای تهدید بهروز شوند.