در صورت سوء استفاده، این نقص ها می توانند به مهاجمان اجازه دسترسی غیرمجاز به اطلاعات حساس را بدهند یا به طور کلی مشکلاتی ایجاد کنند.
اخیراً این خبر منتشر شد اریک بیگرز، یکی از توسعه دهندگان رمز Adiantum و نگهدارنده زیرسیستم هسته لینوکس fscrypt، مجموعه ای از وصله ها را برای مسدود کردن پیشنهاد کرد آنها مسائل امنیتی برگرفته از ویژگی خاص پردازنده های اینتل که زمان اجرا را تضمین نمی کنند ثابت برای دستورالعمل های داده های مختلف پردازش شده است.
وی در مورد پیشنهاد خود اشاره می کند که در پردازنده های اینتل مشکل از خانواده Ice Lake خود را نشان می دهد، علاوه بر این که همچنین مشکل مشابهی در پردازنده های ARM مشاهده می شود.
وابستگی زمان اجرا دستورالعمل ها از داده های پردازش شده در این دستورالعمل ها در نظر گرفته شده است توسط نویسنده پچ هااین مانند یک آسیب پذیری در پردازنده است، از چنین رفتاری نمی تواند امنیت عملیات رمزنگاری را تضمین کند ساخته شده در سیستم
توجه مردم را به این نکته جلب می کنم که در جدیدترین پردازنده های اینتل و آرم ، به طور پیش فرض در زمان اجرای دستورالعمل ها می تواند به داده ها بستگی داشته باشد مقادیر عملیاتی شده این حتی شامل دستورالعمل هایی مانند افزودن، XOR و i استدستورالعمل های AES، که به طور سنتی زمان ثابت فرض می شوند با توجه به مقادیر داده های عملیاتی شده
بسیاری از پیادهسازیهای الگوریتمهای رمزنگاری بر این واقعیت تکیه میکنند که دادهها بر زمان اجرای دستورالعمل تأثیر نمیگذارند و نقض این رفتار میتواند منجر به ایجاد حملات کانال جانبی شود که دادهها را بر اساس تجزیه و تحلیل زمانی پردازش میکنند.
وابستگی بالقوه زمان اجرا به داده ها همچنین می تواند برای صحنه سازی حملات استفاده شود برای تعیین داده های هسته فضای کاربر.
دستورالعمل های زمان غیر ثابت کد رمزنگاری که بر اساس آن است را می شکنند کد زمان ثابت برای جلوگیری از حملات زمانی به کلیدهای رمزنگاری، یعنی بیشتر
کد رمزنگاری این مشکل همچنین می تواند تأثیر گسترده تری بر توانایی داشته باشد
سیستم عامل برای محافظت از داده ها در برابر فرآیندهای غیرمجاز.برای اینتل، پردازندههای Ice Lake و نسخههای بعدی تحت تأثیر این مشکل قرار میگیرند.
راه حل این مشکل این است که یک پرچم CPU تنظیم کنید که قدیمی و صحیح را بازیابی کند
رفتار زمانبندی مستقل از داده: DIT در Arm و DOITM در اینتل.
به گفته اریک بیگرز، از جمله برای دستورالعمل هایی که عملیات افزودن و XOR را انجام می دهند، و همچنین برای دستورالعمل های تخصصی AES-NI، هیچ زمان اجرا ثابتی ارائه نشده است به طور پیش فرض (اطلاعات با آزمایش تایید نشد، طبق داده های دیگر، هنگام ضرب بردارها و شمارش بیت ها یک چرخه تاخیر وجود دارد).
برای غیرفعال کردن این رفتار, اینتل و ARM راه حل های جدیدی را ارائه کرده اندمانند بیت PSTATE DIT (زمان مستقل از داده) برای CPU های ARM و بیت DOITM (حالت زمان بندی مستقل داده ها) برای پردازنده های اینتل، رفتار قبلی را با زمان اجرای ثابت برمی گرداند.
اینتل و ARM توصیه میکنیم حفاظت را در صورت نیاز برای کدهای حیاتی فعال کنید، اما در واقعیت، محاسبات مهم می تواند در هر نقطه از هسته و فضای کاربر رخ دهد، بنابراین امکان فعال کردن دائمی حالت های DOITM و DIT در سراسر هسته در نظر گرفته شده است.
برای پردازنده های ARM، شاخه هسته لینوکس 6.2 قبلاً وصله هایی دریافت کرده اند که رفتار هسته را تغییر می دهند، اما این وصله ها ناکافی در نظر گرفته می شوند زیرا آنها فقط کد هسته را پوشش می دهند و رفتار فضای کاربر را تغییر نمی دهند.
برای پردازنده های اینتل، گنجاندن حفاظت در حال حاضر فقط در مرحله بررسی است. تأثیر عملکرد وصله هنوز اندازهگیری نشده است، اما طبق مستندات اینتل، فعال کردن حالت DOITM عملکرد را کاهش میدهد (بهعنوان مثال، به دلیل غیرفعال کردن برخی بهینهسازیها، مانند بارگذاری پیشبارگذاری ویژه دادهها) و در مدلهای پردازنده آینده، کاهش عملکرد ممکن است افزایش دادن.
در نهایت، اگر شما علاقه مند به کسب اطلاعات بیشتر در مورد آن هستید، می توانید با جزئیات در این مورد مشورت کنید لینک زیر
اولین کسی باشید که نظر