بدافزار GhostRace و سواستفاده از آسیبپذیری جدید نشت داده در پردازندههای مدرن.
گروهی از محققان یک حمله نشت داده جدید را کشف کردهاند که بر معماریهای CPU مدرن که از اجرای نظری پشتیبانی میکنند، تاثیر میگذارد.
این برنامه که GhostRace (CVE-2024-2193) نامیده میشود، نوعی آسیبپذیری CPU اجرای گذرا است که با نام Spectre v1 (CVE-2017-5753) شناخته میشود. این برنامه، اجرای مبتنی بر حدس و گمان و شرایط ریس را ترکیب میکند.
محققان گفتند: “همه اصول اولیه همگامسازی رایج که با استفاده از شاخههای شرطی اجرا میشوند را میتوان از نظر ریزمعماری در مسیرهای نظری با استفاده از حمله پیشبینی نادرست برنچ دور زد و تمام مناطق حیاتی race-free معماری را به Speculative Race Condition (SRC) تبدیل کرده و به مهاجمان اجازه میدهد اطلاعات هدف را نشت دهند”.
یافتههای گروه تحقیقاتی امنیت سیستمها در IBM Research Europe و VUSec، که گروه دوم، حمله کانال جانبی دیگری به نام SLAM را فاش کرد که پردازندههای مدرن را در دسامبر ٢٠٢٣ هدف قرار میداد، شواهدی را ارائه نموده است.
حملات Spectre بهدستهای از حملات کانال جانبی اشاره دارد که از پیشبینی برنچ و اجرای نظری در CPUهای مدرن برای خواندن دادههای ممتاز در حافظه و دور زدن حفاظتهای جداسازی بین برنامهها، سواستفاده میکنند.
درحالیکه اجرای نظری، یک تکنیک بهینهسازی عملکرد است که توسط اکثر پردازندهها استفاده میشود، حملات Spectre از این امر استفاده میکنند که پیشبینیهای اشتباه، آثاری از دسترسیها یا محاسبات حافظه در حافظه پنهان پردازنده را باقی میگذارند.
محققین حمله Spectre در ژانویه ۲۰۱۸ خاطرنشان کردند: “حملات اسپکتر قربانی را وادار میکند تا عملیاتهایی را که در طول پردازش دقیق سریالی دستورات برنامه رخ نمیدهد، انجام دهد و اطلاعات محرمانه قربانی را از طریق یک کانال مخفی به مهاجمین نشت میدهد”.
کشف این آسیبپذیریها (در کنار Meltdown) از آن زمان به بررسی گستردهتر معماری ریزپردازنده در طول سالها منجر شد و حتی برنامه MITER Common Weakness Enumeration (CWE) را بر آن داشت تا چهار نقطه ضعف جدید مرتبط با معماریهای خرد سختافزاری را که از اجرای گذرا (از CWE-1420 تا CWE-1423) ناشی میشوند، اضافه کند.
چیزی که GhostRace را در قیاس با سایرین، قابل توجه میکند این است که یک مهاجم تایید نشده را قادر میسازد تا دادههای دلخواه را از پردازنده با استفاده از شرایط RACE برای دسترسی به مسیرهای کد اجرایی نظری با استفاده از آنچه حمله احتمالی استفاده همزمان User-After-Free (SCUAF) نامیده میشود، استخراج کند.
شرایط race وضعیت نامطلوبی است که زمانی رخ میدهد که دو یا چند فرآیند تلاش میکنند به یک منبع مشترک و بدون هماهنگسازی مناسب دسترسی پیدا کنند، در نتیجه منجر به نتایج متناقض میشود و فرصتی را برای مهاجم جهت انجام اقدامات مخرب فراهم میکند.
مرکز هماهنگی CERT (CERT/CC) در اطلاعیهای توضیح داد: “از نظر ویژگیها و استراتژی بهرهبرداری، آسیبپذیری SRC مشابه شرایط Classic Race است”.
آنها افزودند: “با این حال، از این جهت متفاوت است که مهاجم از شرایط race گفته شده در مسیری که به طور موقت اجرا شده و از یک شاخه speculated اشتباه نشات میگیرد (شبیه به Spectre v1)، سواستفاده میکند و قطعه کد race یا ابزاری را هدف قرار میدهد که درنهایت اطلاعات را برای مهاجم فاش میکند”.
نتیجه نهایی این است که به یک مهاجم با دسترسی به منابع CPU اجازه میدهد تا به دادههای حساس دلخواه از حافظه میزبان دسترسی داشته باشد.
مجموعه VUSec گفت: “هر نرمافزار، بهعنوان مثال، سیستم عامل، هایپروایزر و غیره، پیادهسازی اولیه همگامسازی را از طریق شاخههای شرطی بدون هیچگونه دستورالعمل سریالسازی در آن مسیر و اجرا بر روی هرگونه ریزمعماری (مانند، x86، ARM، RISC-V، و غیره)، که اجازه شرطی را میدهد، انجام میدهد. شاخههایی که بهصورت حدسی و نظری اجرا میشوند، در برابر SRC آسیبپذیر هستند”.
پس از افشای مسئولانه، AMD گفت که دستورالعملهای موجود برای Spectre “برای کاهش این آسیبپذیری نیز قابل اجرا هستند”. محافظان هایپروایزر متن باز Xen اذعان کردند که همه نسخهها تحت تاثیر قرار میگیرند، اگرچه آنها میگویند بعید است که تهدید امنیتی جدی ایجاد کند.
گروه Xen گفت: “بدون اطلاع، تیم امنیتی Xen پچهای سختکنندهای ازجمله افزودن مکانیزم جدید LOCK_HARDEN در x86 مشابه BRANCH_HARDEN موجود ارائه کرده است”.
آنها در آخر افزودند: “LOCK_HARDEN به دلیل عدم اطمینان از وجود آسیبپذیری در Xen و عدم اطمینان در مورد تاثیر عملکرد به طور پیشفرض خاموش است. بااینحال، ما انتظار داریم تحقیقات بیشتری در این زمینه انجام شود و احساس میکنیم که منطقی این است که اقدامات کاهش خطر در اولویت بوده و انجام شوند”.
موارد اخیر
-
حمله DNS Amplification چیست و چگونه انجام می شود؟ نحوه مقابله با آن
-
معرفی همه پروتکل های مسیریابی شبکه و برسی انواع روش های روتینگ
-
پروتکل RIP چیست و چگونه روتینگ را انجام می دهد؟
-
پروتکل EGP چیست و با IGP چه تفاوتی دارد؟
-
پروتکل IS-IS چیست؟ این پروتکل مسیریابی چه تفاوتی هایی دارد و چگونه کار می کند؟
-
پروتکل IGRP چیست و چه تفاوتی با EIGRP دارد؟ پروتکل مسیریابی سیسکو
-
آشنایی با پروتکل IGP و انواع ان
-
حمله BGP Hijacking چیست و چگونه رخ میدهد؟ برسی انواع آن و روش هایی برای پیشگیری
-
پروتکل BGP چیست و چرا خیلی مهم است؟ برسی کامل
-
Route Leaks چیست؟ نشت مسیر چگونه امنیت شبکه را به خطر میاندازد؟
برترین ها
اشتراک گذاری این مطلب
دیدگاهتان را بنویسید
نشانی ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند *