Spectre

محققان امنیتی از مایکروسافت و گوگل یک نوع چهارم از نقص‌های امنیتی Meltdown و Spectre که از نوع نشت داده هستند را کشف کردند[۱] که بر روی پردازنده‌های میلیون‌ها کامپیوتر ازجمله آن‌هایی که توسط اپل به بازار عرضه شدند، تأثیرگذار است.

نسخه چهارم چند هفته پس از انتشار گزارش مجله کامپیوتری آلمانی Heise در مورد مجموعه‌ای از آسیب‌پذیری‌های کلاس Specter در پردازنده‌های اینتل و تعداد کمی از پردازنده‌های ARM، که همچنین می‌تواند معماری AMD را تحت تأثیر قرار دهد[۲]، منتشر شد.

نسخه‌های یک و دو (CVE-2017-5753 و CVE-2017-5715) که Spectre نامیده می‌شوند و نسخه سه (CVE-2017-5754)، که  به‌عنوان Meltdown شناخته شده است، سه آسیب‌پذیری پردازنده هستند که در ژانویه ۲۰۱۸ توسط محققان پروژه صفر گوگل منتشر شدند.

در حال حاضر، محققان مایکروسافت[۳] و گوگل[۴] نسخه ۴ (CVE-2018-3639) را به نام Divulate Store Speculative Store افشا کرده‌اند که مشابه نسخه Spectre است که از اجرای احتمالی(۱) بهره می‌برد که پردازنده‌های مدرن از آن استفاده می‌کنند تا اطلاعات حساس را از طریق یک کانال جانبی افشا کنند.

اجرای احتمالی یک جزء اصلی طراحی پردازنده‌های مدرن است که به‌صورت نظری دستورالعمل‌هایی را بر اساس فرض‌هایی انجام می‌دهد که احتمالاً درست هستند. اگر فرضیه‌ها معتبر باشند، اجرا ادامه می‌یابد و اگر نباشد، رد می‌شود.

بااین‌حال، اشتباهات طراحی اجرای احتمالی می‌تواند توسط نرم‌افزارهای مخرب و یا برنامه‌های در حال اجرا بر روی یک کامپیوتر آسیب‌پذیر و یا یک مجرم اینترنتی، مورد بهره‌برداری قرار گیرد تا CPU را فریب دهد که اطلاعات حساس مانند کلمات عبور و کلیدهای رمزنگاریِ ذخیره‌شده در حافظه سیستم و هسته را آشکار کند.

برخلاف Meltdown که عمدتاً تراشه‌های اینتل را تحت تأثیر قرار داد، Spectre بر روی تراشه‌های دیگر تولیدکنندگان تأثیر می‌گذارد.

Spectre و Meltdown همچنان به هدف قرار دادن اینتل، AMD و ARM ادامه می‌دهند.

آخرین نسخه از این نقص بر روی هسته‌های پردازنده‌های مدرن ازجمله  اینتل، AMD و ARM و همچنین پردازنده Power 8 و Power 9 شرکت IBM و پردازنده‌های System z تأثیرگذار است که تقریباً همه رایانه‌های شخصی، لپ‌تاپ‌ها، گوشی‌های هوشمند، تبلت‌ها و قطعات الکترونیکی تعبیه‌شده را  بدون در نظر گرفتن سازنده یا سیستم‌عامل آن‌ها در معرض خطر قرار می‌دهند.

حمله Speculative Store Bypass تابه‌حال در محیط runtime بر اساس زبان نشان داده شده است. شایع‌ترین استفاده از runtimeها، مانند جاوا اسکریپت، در مرورگرهای وب است، اما اینتل هیچ شواهدی از بهره‌بردارهای مبتنی بر مرورگر را ندیده است.

Red Hat که یکی از بزرگ‌ترین مشتقات لینوکس است نیز یک ویدئو[۵] ارائه کرده است که نقص جدید Spectre را در کنار انتشار یک راهنمای قابل‌توجه[۶] نشان می‌دهد.

علاوه بر نوع چهارم، محققان گوگل و مایکروسافت همچنین نوع ۳A را به نام Rogue System Register Read کشف کرده‌اند. این نقص نوعی از Meltdown است که اجازه می‌دهد تا حمله‌کنندگان با دسترسی محلی به یک سیستم از تحلیل کانال جانبی استفاده کنند و اطلاعات حساس و سایر پارامترهای سیستم را بخوانند.

اینتل نوع چهارم از این نقص را به‌عنوان خطر متوسط طبقه‌بندی کرده است، زیرا بسیاری از بهره‌بردارهایی که از حمله Speculative Store Bypass بهره‌برداری می‌کنند، توسط مرورگرهای مانند Safari، Edge و Chrome برطرف شده‌اند.

اینتل در گزارش خود می‌گوید[۷]: “در ماه ژانویه، بسیاری از پیشگامان مرورگرها برای مقابله با نوع ۱ اقدامات پیش‌گیرانه‌ای را پیاده‌سازی کردند. این اقدامات اساساً سختی بهره‌برداری از کانال‌های جانبی در مرورگر وب را افزایش دادند. همچنین این اقدامات قابل‌اجرا برای نوع چهارم هستند و در اختیار مصرف‌کنندگان به‌منظور استفاده قرار دارند.”

بااین‌حال، ازآنجاکه پتانسیل بهره‌بردارهای جدید وجود دارد، اینتل و شرکای آن (ازجمله سازندگان کامپیوتر و تولیدکنندگان سیستم‌های OEM) به‌روزرسانی‌های نرم‌افزاری میکرو کد و بایوس را برای نوع چهارم در هفته بعد ارائه خواهند داد.

اقدامات پیشگیرانه برای Spectre منجر به تحت تأثیر قرار دادن کارایی سیستم می‌شود.

اقدامات پیشگیرانه به‌طور پیش‌فرض خاموش خواهد بود و مشتریان می‌توانند انتخاب کنند که آیا آن را فعال کنند یا نه. در صورت فعال بودن، اینتل مشاهده کرده است که عملکرد تقریباً ۲ تا ۸ درصد در نمرات کلی برای معیارهایی نظیر SYSmark 2014 SE و نرخ عدد صحیح SPEC در سیستم‌های تست سرویس‌دهنده و مشتری کاهش می‌یابد.

ARM و AMD همچنین وصله‌های امنیتی را برای تراشه‌های مربوطه منتشر می‌کنند و ARM گفته است که آخرین نسخه Spectre فقط تعداد کمی از هسته‌های Arm Cortex-A را تحت تأثیر قرار می‌دهد که با یک به‌روزرسانی سیستم‌عامل ARM برطرف می‌شود[۸].

AMD همچنین یک بیانیه منتشر کرد و به کاربران توصیه کرد که وصله موردنظر را به دلیل مشکلات ذاتی در انجام یک حمله موفقیت‌آمیز حمله Speculative Store Bypass غیرفعال کنند و دراین‌باره می‌گوید:

“مایکروسافت تست نهایی و اعتبار سنجی به‌روزرسانی‌های خاص AMD برای سیستم‌عامل‌های سرویس‌گیرنده و مشتری را کامل کرده است که انتظار می‌رود از طریق فرآیند به‌روزرسانی استاندارد خود منتشر شوند.

به همین ترتیب، توزیع‌کنندگان لینوکس درحال‌توسعه سیستم‌عامل‌های SSB هستند. AMD توصیه می‌کند با ارائه‌دهنده سیستم‌عامل خود برای راهنمایی‌های ویژه مشورت کنید.”

به‌طور خلاصه، راهکارهای دائمی (به‌جای کاهش خطر) برای بهره‌بردارهای مشابه Spectre وجود نخواهد داشت، تا زمانی که اینتل و دیگر سازندگان تراشه‌های خود را به‌روزرسانی کنند. بنابراین به کاربران شدیداً توصیه می‌شود که به دنبال شیوه‌های امنیتی خوب باشند که بتوانند خود را در برابر بدافزارها محافظت کنند و اطمینان حاصل کنند که نرم‌افزارهای آن‌ها به‌روز می‌شود.

منابع

[۱] https://apa.aut.ac.ir/?p=3397

[۲] https://apa.aut.ac.ir/?p=4130

[۳] https://blogs.technet.microsoft.com/srd/2018/05/21/analysis-and-mitigation-of-speculative-store-bypass-cve-2018-3639

[۴] https://bugs.chromium.org/p/project-zero/issues/detail?id=1528

[۵] https://youtu.be/Uv6lDgcUAC0

[۶] https://www.redhat.com/en/blog/speculative-store-bypass-explained-what-it-how-it-works

[۷] https://newsroom.intel.com/editorials/addressing-new-research-for-side-channel-analysis

[۸] http://www.arm.com/security-update

[۹] https://thehackernews.com/2018/05/fourth-critical-spectre-cpu-flaw.html


(۱) speculative execution