تیمی از محققان دانشگاه تگزاس، دانشگاه ایلینویز و دانشگاه واشنگتن اطلاعاتی را درباره خانواده جدیدی از حملات کانال جانبی (CVE-2022-23823، CVE-2022-24436) با نام رمز Hertzbleed افشا کرده اند. روش حمله پیشنهادی مبتنی بر ویژگیهای کنترل فرکانس پویا در پردازندههای مدرن است و بر تمام پردازندههای فعلی اینتل و AMD تأثیر میگذارد. به طور بالقوه، این مشکل ممکن است خود را در پردازندههای تولیدکنندگان دیگر که از تغییرات فرکانس پویا پشتیبانی میکنند، برای مثال در سیستمهای ARM نیز آشکار کند، اما این مطالعه به آزمایش تراشههای اینتل و AMD محدود شد. متون منبع با اجرای روش حمله در GitHub منتشر شده است (پیاده سازی بر روی رایانه ای با پردازنده Intel i7-9700 آزمایش شد).
برای بهینهسازی مصرف انرژی و جلوگیری از گرمای بیش از حد، پردازندهها به صورت دینامیکی فرکانس را بسته به بار تغییر میدهند که منجر به تغییر در عملکرد میشود و بر زمان اجرای عملیات تأثیر میگذارد (تغییر فرکانس 1 هرتز منجر به تغییر عملکرد به میزان 1 سیکل ساعت در هر میشود. دومین). در طول مطالعه، مشخص شد که تحت شرایط خاصی در پردازنده های AMD و Intel، تغییر فرکانس به طور مستقیم با داده های پردازش شده مرتبط است، که به عنوان مثال، منجر به این واقعیت می شود که زمان محاسبه عملیات "2022 + 23823" و "2022 + 24436" متفاوت خواهد بود. بر اساس تجزیه و تحلیل تفاوت در زمان اجرای عملیات با داده های مختلف، امکان بازیابی غیر مستقیم اطلاعات مورد استفاده در محاسبات وجود دارد. در عین حال، در شبکههای پرسرعت با تاخیرهای ثابت قابل پیشبینی، میتوان با تخمین زمان اجرای درخواستها، حمله را از راه دور انجام داد.
در صورت موفقیت آمیز بودن حمله، مشکلات شناسایی شده تعیین کلیدهای خصوصی را بر اساس تجزیه و تحلیل زمان محاسبات در کتابخانه های رمزنگاری که از الگوریتم هایی استفاده می کنند که در آن محاسبات ریاضی همیشه بدون توجه به ماهیت داده های در حال پردازش در زمان ثابت انجام می شود، امکان پذیر می شود. . چنین کتابخانه هایی محافظت شده از حملات کانال جانبی در نظر گرفته می شدند، اما همانطور که مشخص شد، زمان محاسبه نه تنها توسط الگوریتم، بلکه با ویژگی های پردازنده نیز تعیین می شود.
به عنوان یک مثال عملی که امکان استفاده از روش پیشنهادی را نشان میدهد، یک حمله به پیادهسازی مکانیسم کپسولهسازی کلید SIKE (Supersingular Isogeny Key Encapsulation) نشان داده شد که در فینال رقابت سیستمهای رمزنگاری پس کوانتومی که توسط ایالات متحده برگزار شد گنجانده شد. مؤسسه ملی استاندارد و فناوری (NIST) و در برابر حملات کانال جانبی محافظت شده است. در طول آزمایش، با استفاده از نوع جدیدی از حمله بر اساس متن رمزی انتخاب شده (انتخاب تدریجی بر اساس دستکاری متن رمزی و به دست آوردن رمزگشایی آن)، امکان بازیابی کامل کلید مورد استفاده برای رمزگذاری با اندازه گیری از یک سیستم از راه دور وجود داشت. استفاده از پیاده سازی SIKE با زمان محاسبات ثابت. تعیین یک کلید 364 بیتی با استفاده از پیاده سازی CIRCL 36 ساعت و PQCrypto-SIDH 89 ساعت طول کشید.
اینتل و AMD آسیب پذیری پردازنده های خود را در برابر این مشکل اذعان کرده اند، اما قصد ندارند آسیب پذیری را از طریق به روز رسانی میکروکد مسدود کنند، زیرا حذف آسیب پذیری در سخت افزار بدون تأثیر قابل توجهی بر عملکرد سخت افزار امکان پذیر نخواهد بود. در عوض، به توسعه دهندگان کتابخانه های رمزنگاری توصیه هایی در مورد نحوه جلوگیری از نشت اطلاعات در هنگام انجام محاسبات محرمانه داده می شود. Cloudflare و مایکروسافت قبلاً حفاظت مشابهی را به پیادهسازیهای SIKE خود اضافه کردهاند، که منجر به عملکرد 5% برای CIRCL و 11% عملکرد برای PQCrypto-SIDH شده است. راه حل دیگر برای مسدود کردن این آسیبپذیری، غیرفعال کردن حالتهای Turbo Boost، Turbo Core یا Precision Boost در بایوس یا درایور است، اما این تغییر منجر به کاهش شدید عملکرد میشود.
اینتل، Cloudflare و مایکروسافت در سه ماهه سوم سال 2021 و AMD در سه ماهه اول 2022 از این مشکل مطلع شدند، اما به درخواست اینتل افشای عمومی این مشکل تا 14 ژوئن 2022 به تعویق افتاد. وجود مشکل در پردازندههای دسکتاپ و لپتاپ بر اساس 8 تا 11 نسل از ریزمعماری Core اینتل و همچنین برای پردازندههای مختلف دسکتاپ، موبایل و سرور AMD Ryzen، Athlon، A-Series و EPYC تایید شده است (محققان روش را نشان دادند. در پردازنده های Ryzen با ریزمعماری Zen 2 و Zen 3).
منبع: opennet.ru