شناسایی مهم‌ترین آسیب‌پذیری در تراشه‌های اینتل و AMD در دو دهه‌ی اخیر!

جزئیات حملات «Meltdown» و «Spectre» علیه تراشه‌های اینتل و AMD افشاء شد.

 پژوهشگران جزئیات فنی دو روش حمله‌ی جدید را افشاء کرده‌اند که از آسیب‌پذیری‌های مهم پردازنده‌ی اینتل و AMD و سایر شرکت‌ها بهره‌برداری می‌کنند. آن‌ها ادعا می‌کنند که میلیاردها دستگاه آسیب‌پذیر هستند، و به عاملان مخرب اجازه می‌دهند بدون این‌که ردیابی شوند، به گذرواژه‌ها و سایر اطلاعات حساس دسترسی پیدا کنند.

در چند روز گذشته گزارش‌هایی در مورد یک آسیب‌پذیری مهم در پردازنده‌های اینتل ارائه شده است که به یک مهاجم اجازه می‌دهد تا به حافظه‌ی فضای هسته‌ی سامانه‌‌عامل  دسترسی پیدا کند. به نظر می‌رسد که در واقع دو حمله‌ی متفاوت وجود دارد و پژوهشگران می‌گویند یکی از آن‌ها پردازنده‌ها AMD و ARM را به خوبی تحت تاثیر قرار می‌دهد. 

نمایندگان AMD ادعا کرده‌اند که محصولات آن‌ها آسیب‌پذیر نیستند، که این ادعا منجر به افزایش ۷ درصدی سهام این شرکت شده است. اینتل پس از آن‌که ۴ درصد از ارزش سهام خود را از دست داد، در بیانیه‌ای گفت که این آسیب‌پذیری‌ها تنها منحصر به محصولات آن نیست.

 

Meltdown و Spectre

حملات Meltdown و Spectre به برنامه‌های مخربی که در یک دستگاه نصب شده‌اند اجازه می‌دهند که هنگام پردازش به اطلاعات سایر برنامه‌ها یا هسته دست یابند. این اطلاعات می‌تواند شامل گذرواژه‌های ذخیره شده در برنامه‌ی مدیریت گذرواژه یا مرورگر وب، تصاویر، اسناد، رایانامه‌ها، و اطلاعات برنامه‌های پیام‌رسان باشد.

این حملات نه تنها علیه رایانه‌های شخصی بلکه علیه دستگاه‌های تلفن همراه و کارگزارهای ابری نیز می‌تواند انجام شود. با این‌که هیچ شواهدی مبنی بر بهره‌برداری وجود ندارد، پژوهشگران خاطرنشان کردند که این حملات در پرونده‌های گزارش سنتی هیچ رد پایی به جا نمی‌گذارند و بعید است که توسط محصولات امنیتی شناسایی شوند، هر چند که محصولات امنیتی ممکن است این بدافزار را که Meltdown و Spectre را راه‌اندازی می‌کند، شناسایی کنند.

حمله‌ی Meltdown توسط جان هُرن از Google Project Zero و پژوهشگران Cyberus Technology و یک گروه از دانشگاه فن‌آوری Graz در اتریش کشف شد. حمله‌ی  Spectre هم توسط هُرن و یک گروه از کارشناسان دانشگاه‌ها و شرکت‌های مختلف کشف شد. برای هر یک از این روش‌های حمله، مقالات فنی و کد اثبات مفهومی منتشر شده است و انتظار می‌رود که اینتل، مایکروسافت، ARM، و Google Project Zero توصیه‌نامه‌های خود را منتشر کنند.

سازوکارهای جداسازی حافظه که در سامانه‌های رایانه‌ای پیش‌رفته وجود دارد باید به طور معمول از خواندن و نوشتن برنامه‌ها در حافظه‌ی هسته یا دسترسی به حافظه‌ی سایر برنامه‌ها جلوگیری کنند. با این حال حملات Meltdown و Spectre این سازوکارها را دور می‌زنند.

 

علت نامیده شده حمله‌ی Meltdown به این نام این است که مرزهای امنیتی را از بین می‌برد، که به طور معمول توسط سخت‌افزار این کار انجام می‌شود، و می‌تواند برای خواندن مکان‌های دلخواه از حافظه‌ی هسته مورد استفاده قرار گیرد. یک برنامه‌ی غیرممتاز مخرب می‌تواند از آن استفاده کند تا حافظه‌ی مربوط به سایر برنامه‌ها و حتی ماشین‌های مجازی را در محیط‌های ابری بخواند. این آسیب‌پذیری مربوط به Meltdown با شناسه‌ی CVE-2017-5754 ردیابی می‌شود.

 

پژوهشگران می‌گویند مشخص نیست که Meltdown پردازنده‌های ARM و AMD را تحت تاثیر قرار می‌دهد، اما تایید شده است که تقریباً هر پردازنده‌ی اینتلی را که از سال ۱۹۹۵ میلادی ساخته شده، به خصوص پردازنده‌هایی که یک سامانه به نام اجرای خارج از ترتیب پیاده‌سازی می‌کنند، تحت تاثیر قرار می‌دهد.

از سوی دیگر تایید شده است که Spectre نه تنها اینتل بلکه پردازنده‌های AMD و ARM را نیز تحت تاثیر قرار می‌دهد. با این حال، AMD ادعا می‌کند که به خاطر معماری آن‌‌ها، برای پردازنده‌های آن خطری وجود ندارد یا خطری نزدیک به صفر است. 

رایانه‌های رومیزی، رایانه‌ی همراه، تلفن‌های همراه هوشمند و کارگزارهای ابری نیز تحت تاثیر قرار می‌گیرند، اما این آسیب‌پذیری در مقایسه با Meltdown بسیار شدیدتر است.

 

علت اصلی نامیده شدن این حمله به نام Spectre، اجرای پرمخاطره است و به خاطر این‌که واقعاً به راحتی قابل حل نیست، گاهی اوقات مدام تکرار خواهد شد. شناسه‌های CVE-2017-5753 و CVE-2017-5715 به Spectre اختصاص داده شده است.

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

 

پژوهشگران تشریح کردند: « Meltdownسازوکاری را که مانع از دسترسی برنامه‌ها به حافظه‌ی سامانه‌ی دلخواه می‌شود، به هم می‌ریزد. در نتیجه برنامه‌ها می‌توانند به حافظه‌ی سامانه دسترسی پیدا کنند. Spectre سایر برنامه‌ها را فریب می‌دهد تا به مکان‌های دلخواه از حافظه‌ی آن‌ها دسترسی پیدا کند. هر دو حمله از کانال‌های جانبی استفاده می‌کنند تا به اطلاعات مکان‌های دسترسی داده شده‌ی حافظه دست یابند.»

 

راه‌های مقابله

می‌توان با استفاده از جداسازی جدول صفحه‌ی هسته (KPTI)، که یک روش سخت است که برای بهبود امنیت با جداسازی فضای هسته از حافظه‌ی فضای کاربر طراحی شده است، از حملات Meltdown جلوگیری کرد. این سامانه مبتنی بر سامانه‌ی KAISER است که سال گذشته توسط گروهی از پژوهشگران دانشگاه Graz توسعه داده شد.

جداسازی جدول صفحه‌ی هسته یا KPTI در هسته‌ی لینوکس پیاده‌سازی شده است و مایکروسافت تلاش می‌کند تا برای ویندوز هم سامانه‌ای مشابه آن پیاده‌سازی کند.

 ارائه‌دهندگان خدمات ابری که از پردازنده‌های اینتل و مجازی‌سازی محدود Xen استفاده می‌کنند تحت تاثیر قرار می‌گیرند. خدمات وب آمازون (AWS) و مایکروسافت آزور روی وصله‌ها کار کرده‌اند و به مشتریان اطلاع داده‌اند که نمونه‌های ابری در روزهای آینده باید دوباره راه‌اندازی شوند  تا وصله‌های امنیتی اعمال شوند.

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

 جلوگیری از حملات Spectre بسیار سخت‌تر است. با این حال، پژوهشگران می‌گویند جلوگیری از بهره‌برداری‌های خاص با استفاده از وصله‌های نرم‌افزاری امکان‌پذیر است.

 

اینتل نگرانی‌های مربوط به خطاهای عملکردی معرفی شده در راه‌های مقابله را رفع می‌کند

 

از آن جا که قبل از افشاء، KPTI در هسته‌ی لینوکس پیاده‌سازی شده است، و در واقع این مسأله باعث شد که کارشناسان متوجه شوند که در پردازنده‌های اینتل آسیب‌پذیری جدی وجود دارد، چندین آزمایش انجام شده تا تاثیر راه‌های مقابله روی عملکرد آن‌ها مشخص شود.

 پژوهشگرانی که روش KAISER را توسعه دادند، یک تاثیر منفی ۰٫۲۸ درصدی در عملکرد پردازنده‌ها را گزارش دادند، اما آزمایشات انجام شده نشان داد که خطاهای عملکردی بسته به نوع عملیات انجام شده می‌تواند به ۳۰ درصد برسد.

 مایکل شوارتز، یکی از پژوهشگرانی که در کشف آسیب‌پذیری‌های Meltdown و Spectre نقش داشته‌، تایید کرده است که قطعاً می‌تواند خطای عملکردی قابل توجهی برای انواع خاصی از حجم کاری وجود داشته باشد.

 

شوارتز گفت: «ما برخی معیارها را روی پیاده‌سازی اولیه KAISER اجرا کردیم که تنها تاثیرات اندکی روی پردازنده‌های پیش‌رفته نشان داد. با این حال، ما حدس می‌زنیم که خطاهای عملکردی گزارش شده توسط سایر افراد (چیزی حدود ۵ تا ۳۰ درصد) در پردازنده‌های قدیمی و حجم کاری غیرعادی واقع‌بینانه است.»

 

اینتل دوباره به مشتریان اطمینان داد که هر گونه تاثیر در عملکرد به حجم کاری بستگی دارد و برای کاربر معمولی نباید قابل توجه باشد. علاوه بر آن، سازندگان تراشه می‌گویند تاثیر در عملکرد به مرور زمان کاهش می‌یابد.

 

 

0
هنوز هیچ ستاره‌ای موجود نیست.

افزودن یک دیدگاه جدید