Spectre v2محققان امنیت سایبری آنچه را که به گفته آنها “اولین بهره‌بردار بومی Spectre v2” در برابر هسته لینوکس در سیستم‌های اینتل است، افشا کرده‌اند که می‌تواند برای خواندن داده‌های حساس از حافظه مورد بهره‌برداری قرار گیرد.

به گفته محققان گروه امنیت سیستم و شبکه (VUSec) در Vrije Universiteit Amsterdam در یک مطالعه جدید[۱]، این بهره‌بردار که Native Branch History Injection (BHI) نام دارد، می‌تواند برای نشت حافظه هسته دلخواه با سرعت ۳٫۵ کیلوبایت بر ثانیه با دور زدن محافظت های موجود Spectre v2/BHI استفاده شود.

این نقص با عنوان CVE-2024-2201 ردیابی می‌شود.

BHI برای اولین‌بار[۲] توسط VUSec در مارس ۲۰۲۲ فاش شد و آن را به عنوان تکنیکی توصیف کرد که می‌تواند محافظت های Spectre v2 را در پردازنده های مدرن اینتل، AMD و Arm دور بزند.

درحالی‌که این حمله از فیلترهای بسته برکلی (eBPFs) استفاده کرد، توصیه‌های اینتل برای رفع این مشکل، از جمله غیرفعال‌کردن eBPF ‌های غیرمجاز لینوکس بود.

اینتل در آن زمان گفت[۳]: “زمان‌های اجرا مدیریت‌شده ممتازی که می‌توانند به‌گونه‌ای پیکربندی شوند که به کاربر غیرمجاز اجازه می‌دهد کد را در یک دامنه ممتاز تولید و اجرا کند – مانند ‘eBPF غیرمجاز’ لینوکس – به طور قابل‌توجهی خطر حملات اجرای گذرا را افزایش می‌دهد، حتی زمانی که دفاع در برابر حالت درونی Branch Target Injection وجود دارد.”

“هسته را می‌توان به‌گونه‌ای پیکربندی کرد که به طور پیش‌فرض دسترسی به eBPF غیرمجاز را ممنوع کند، درحالی‌که همچنان به مدیران اجازه می‌دهد در زمان اجرا آن را در صورت نیاز فعال کنند.”

Native BHI با نشان‌دادن اینکه BHI بدون eBPF امکان‌پذیر است، این اقدام متقابل را خنثی می‌کند[۴]. این بر تمام سیستم‌های اینتل که در معرض BHI هستند تأثیر می‌گذارد.

در نتیجه، این امکان را برای مهاجمی که به منابع CPU دسترسی دارد، می‌تواند از طریق نرم‌افزارهای مخرب نصب‌شده روی یک ماشین باهدف استخراج داده‌های حساس که با فرایند متفاوتی مرتبط هستند، بر مسیرهای اجرای گمانه‌زنی تأثیر بگذارد.

مرکز هماهنگی CERT (CERT/CC) در توصیه‌ای گفت[۵]: «تکنیک‌های کاهش موجود برای غیرفعال‌کردن eBPF ممتاز و فعال‌کردن (Fine)IBT برای متوقف کردن بهره‌برداری BHI علیه هسته/هایپروایزر کافی نیست.»

این کار با استفاده از برنامه‌ای به نام InSpectre Gadget[6] انجام می‌شود که می‌تواند ابزارهایی را در هسته سیستم‌عامل پیدا کند که می‌توانند برای دورزدن محافظت‌های ساخته شده در ریزپردازنده‌های اینتل (مانند FineIBT) برای جلوگیری از بهره داری از اجرای گمانه‌زنی و به‌دست‌آوردن داده‌های مخفی مورد سوءاستفاده قرار گیرند.

گجت‌ها به قطعات کد[۷] (یعنی دنباله‌ای از دستورالعمل‌ها[۸]) اطلاق می‌شوند که اجرای آن‌ها اطلاعات حساس قربانی را به یک کانال مخفی منتقل می‌کند.

“یک مهاجم تأیید نشده می‌تواند از این آسیب‌پذیری برای نشت حافظه ممتاز از CPU با پرش فرضی به یک ابزار انتخابی بهره‌برداری کند.”

Spectre v2

تأیید شده است که این نقص بر Illumos، Intel، Red Hat، SUSE Linux، Triton Data Center و Xen تأثیر می‌گذارد. AMD در یک بولتن[۹] اعلام کرد که “از هیچ تأثیری” بر محصولات خودآگاه نیست.

این افشاگری چند هفته پس از جزئیات [۱۰]GhostRace (CVE-2024-2193) توسط IBM و VUSec صورت می‌گیرد، نوعی از Spectre v1 که از ترکیبی از اجرای حدس و گمان و شرایط مسابقه برای افشای داده‌ها از معماری‌های CPU معاصر استفاده می‌کند.

همچنین به دنبال تحقیقات جدیدی از ETH زوریخ است که خانواده‌ای از حملات به نام حملات [۱۱]Ahoi را فاش کرد که می‌توانند برای به خطر انداختن محیط‌های اجرایی قابل‌اعتماد مبتنی بر سخت‌افزار (TEEs) و شکستن ماشین‌های مجازی محرمانه (CVM) مانند AMD Secure Encrypted Virtualization-Secure Nested Paging ([12]SEV-SNP) و پسوندهای دامنه اعتماد اینتل ([۱۳]TDX) استفاده شوند.

این حملات با نام‌های رمز Heckler و WeSee از وقفه‌های مخرب برای شکستن یکپارچگی CVMها استفاده می‌کنند که به طور بالقوه به عوامل تهدید اجازه می‌دهد از راه دور وارد سیستم شوند و دسترسی بالاتری داشته باشند و همچنین خواندن، نوشتن و تزریق کد دلخواه را برای غیرفعال‌کردن قوانین فایروال انجام دهند و یک پوسته ریشه را باز کنند.

محققان گفتند: “برای حملات Ahoi، یک مهاجم می‌تواند از Hypervisor برای تزریق وقفه‌های مخرب به vCPUهای قربانی استفاده کند و آن را فریب دهد تا کنترل‌کننده‌های وقفه را اجرا کند. این کنترل‌کننده‌های وقفه می‌توانند اثرات سراسری داشته باشند (به‌عنوان‌مثال، تغییر وضعیت ثبت در برنامه) که یک مهاجم می‌تواند باعث به خطر انداختن CVM قربانی شود.”

در پاسخ به این یافته‌ها، AMD گفت[۱۴] که این آسیب‌پذیری ریشه در پیاده‌سازی هسته لینوکس SEV-SNP دارد و رفع برخی از مشکلات به هسته اصلی لینوکس منتقل شده است.

منابع

[۱] https://www.vusec.net/projects/native-bhi

[۲] https://thehackernews.com/2022/03/new-exploit-bypasses-existing-spectre.html

[۳] https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/technical-documentation/branch-history-injection.html

[۴] https://youtu.be/24HcE1rDMdo

[۵] https://kb.cert.org/vuls/id/155143

[۶] https://github.com/vusec/inspectre-gadget

[۷] https://www.ndss-symposium.org/ndss-paper/spectaint-speculative-taint-analysis-for-discovering-spectre-gadgets

[۸] https://security.googleblog.com/2021/03/a-spectre-proof-of-concept-for-spectre.html

[۹] https://www.amd.com/en/resources/product-security/bulletin/amd-sb-7018.html

[۱۰] https://thehackernews.com/2024/03/ghostrace-new-data-leak-vulnerability.html

[۱۱] https://ahoi-attacks.github.io

[۱۲] https://thehackernews.com/2023/11/cachewarp-attack-new-vulnerability-in.html

[۱۳] https://www.intel.com/content/www/us/en/developer/tools/trust-domain-extensions/overview.html

[۱۴] https://www.amd.com/en/resources/product-security/bulletin/amd-sb-3008.html

[۱۵] https://thehackernews.com/2024/04/researchers-uncover-first-native.html