حفره امنیتی جدید اسپویلر در پردازندههای اینتل شناسایی شد
یکی از ویژگیهای جالب پردازندههای اینتل، ویژگی اجرای حدسی (Speculative Execution) است که برای تقویت کارایی پردازنده، مسیرهایی را پیش از تکمیل شاخه پیشبینی میکند که دستورالعمل میپیماید. درعینحال، این ویژگی دقیقا همان عاملی بوده که در گذشته، دردسرهایی برای اینتل ایجاد کرده است. گزارش جدیدی که پژوهشگران امنیتی مؤسسه پلیتکنیک ورچستر و دانشگاه لوبک اول مارس منتشر کردند، نشان میدهد حفرهی امنیتی دیگری هم مرتبطبا همین ویژگی عملکردی وجود دارد که خیلی مهم است و باید به آن پرداخت.
آسیبپذیری جدید که «اسپویلر» (Spoiler) نامیده میشود، این توانایی را دارد که چگونگی اتصال حافظهی مجازی و فیزیکی به یکدیگر را با اندازهگیری زمانبندی عملیاتهای حدسی بارگیری و ذخیرهسازی که توسط پردازنده انجام میشود، تعیین کند. با شناسایی و بررسی اختلافهایی که در زمانبندیها رخ میدهد، مهاجم این امکان را دارد که طرحبندی حافظه را تعیین و در نتیجه، مناطق مناسب برای حمله را شناسایی کند.
دنیل مقیمی، یکی از پژوهشگران این پژوهش در این گزارش گفته است:
دلیل اصلی چنین موضوعی این است که عملیاتهای حافظه بهصورت حدسی اجرا میشوند و پردازنده، زمانی وابستگیها را برطرف میکند که همهی بیتهای آدرسهای فیزیکی در دسترس باشند. بیتهای آدرس فیزیکی، اطلاعات امنیتی حساسی هستند و اگر در فضای کاربر در دسترس قرار بگیرند، کاربر میتواند حملههای میکرو معماری دیگری نیز انجام بدهد.
اجرای حدسی بهطور معمول با استفاده از بافر ترتیب حافظه برای ردیابی عملیاتهای انجامشده در حافظه اجرا میشود و برای این کار، دادهها را از روی رجیستر CPU روی حافظهی اصلی کپی میکند تا در کدها نمایش داده بشوند. سپس، دادهها را میتوان بدون نوبت از روی حافظهی اصلی روی رجیستری کپی کرد و به این ترتیب، اگر عناصر احتمالی را درست حدس زده باشند، سرعت کلی عملیات بالاتر میرود؛ اگر هم اشتباه باشند، عناصر حدسی کنار گذاشته میشوند و دادههای غیرحدسی بهصورت معمولی بارگذاری میشوند تا دستورالعمل صادرشده اجرا شود، ولی هیچ تاثیری روی ارتقای سرعت اجرای آن ندارد.
مهاجمان با اندازهگیری زمانبندی عملیاتهای حدسی بارگذاری و ذخیرهسازی، اختلاف بین آنها را محاسبه و مناطق مناسب برای حمله را شناسایی میکنند
در گزارش منتشرشده توسط پژوهشگران آمده است که مهمترین مسئله در خصوص اسپویلر، عملکرد ابهامزدایی حافظه در پردازندههای اینتل است که تلاش میکند تا مانع از انجام محاسبات روی دادههای بارگذاریشدهی حاصل از حدس و گمان شود و رفتار زمانبندی آن، در حقیقت نقطهی واقعی در این آسیبپذیری است.
وقتی که بافر حافظه از آدرسهایی پر میشود که از آفستهای مشابه اما با صفحات مجازی مختلف استفاده میکنند و سپس یک بار حافظه با همان آفست روی یک صفحهی حافظهی متفاوت صادر میکنند، تیم اقدام به اندازهگیری زمان بارگذاری میکند. پس از انجام چند بارگذاری متعدد در صفحات مجازی متعدد و بیشمار، میتوان از روی تفاوتهای موجود در میان زمانبندیها به سرنخهایی دربارهی مکانهای حافظه دست یافت.
پژوهشگران بر این باور هستند که این حفره امنیتی، حملههای «Rowhammer» و کَشهای موجود را راحتتر میکند و در عین حال، با سرعت بخشیدن به حملههایی که با استفاده از جاوا اسکریپت انجام میشوند، باعث میشود که اجرای آنها بهجای چند هفته، تنها در عرض چند ثانیه انجام بشود. بهگفتهی پژوهشگران هیچ نرمافزار اصلاحکنندهای وجود ندارد که بتواند این مشکل را بهطور کامل برطرف کند. برطرف کردن مشکل معماری تراشه باعث کاهش چشمگیر عملکرد تراشه میشود.
در تاریخ ۱ دسامبر ۲۰۱۸ جزئیات این آسیبپذیری به اطلاع اینتل رسانده شد و پس از یک مهلت ۹۰ روزه، برای عموم مردم فاش شد. تا به حال، اینتل هیچ شمارهی CVE را برای این مشکل صادر نکرده است. مقیمی حدس میزند که این مشکل را نمیتوان بهراحتی با استفاده از میکروکدها به روشی کارآمد برطرف کرد و نیز اینکه، طراحی یک وصله برای مسیر حمله میتواند سالها به طول انجامد.
از آنجایی که این موضوع، صرفنظر از سیستم عاملی که کاربران استفاده میکنند، روی همهی پردازندههای نسل اول تا جدیدترین نسخههای Intel Core تاثیر میگذارد، بنابراین تقریبا این موضوع قطعی است که همهی مکینتاشها دربرابر حملاتی که از این حفره امنیتی بهره میبرند، آسیبپذیر هستند.
با درنظرگرفتن تاثیرات بالقوهی حاصل از این آسیبپذیری روی محصولاتی که از سیستمعامل مک او اس (macOS) استفاده میکنند، هنوز معلوم نیست که آیا اپل پاسخی ویژه برای این مسئله در نظر گرفته است یا خیر. همچنین، محققان به این نکته اشاره میکنند که هستههای پردازندههای ARM و AMD رفتار مشابهی ندارند؛ پس میتوان اینگونه نتیجه گرفت که آیفونها و آیپدها مصون از این حملات هستند.
هیچ نرمافزار اصلاحکنندهای وجود ندارد که بتواند این مشکل را بهطور کامل برطرف کند
اجرای حدسی، از اهمیت بهسزایی در آسیبپذیری کشفشده در ژانویه ۲۰۱۸ با نام «اسپکترا» (Spectre) برخوردار است. این آسیبپذیری، پردازندههای اینتل و نسخههای مبتنی بر ARM، (شامل دستگاههایی که از سیستمهای عامل macOS و iOS استفاده میکنند) را تحت تاثیر قرار میدهد و بهمحض کشف آن، اپل به سرعت تلاش کرد تا اصلاحیههایی را برای مقابله با آن منتشر کند.
اسپویلر و اسپکترا، از نظر استفاده از این ویژگی مشابه هم هستند، ولی با روشی کاملا متفاوت از یکدیگر عمل میکنند و در نتیجه، این دو را میتوان کاملا متمایز از هم دانست.
اینتل در مورد حملاتی که به سبک «Rowhammer» اتفاق میافتند، گفت:
انتظار داریم که امنیت نرمافزار دربرابر چنین حملاتی را با بهره بردن از روشهای توسعهی امن کانال جانبی تأمین کنیم. حفاظت از مشتریان و دادههای آنها همچنان اولویت مهم ما است و ما بهخاطر تحقیقاتی که جامعهی امنیتی انجام میدهند، قدردان تلاشهای آنها هستیم.
نظرات