تحقیقات جدید نشان میدهد که برخی از اپلیکیشنهای UEFI Shell که توسط سازندگان سختافزار (Vendors) امضا شدهاند، میتوانند به مهاجمان اجازه دهند تا مکانیزمهای حفاظتی Secure Boot را دور بزنند. این آسیبپذیری از طریق سوءاستفاده از دستوراتی مانند mm (Memory Modify) امکانپذیر است که دسترسی مستقیم به حافظه سیستم را فراهم میکند.
تحلیل فنی آسیبپذیری
در سیستمهایی که قابلیت Secure Boot فعال است، تمامی درایورها و اپلیکیشنهای UEFI باید پیش از اجرا، دارای امضای دیجیتال معتبر باشند. این اعتبارسنجی از طریق پایگاه داده Authorized Signature Database (DB) انجام میشود که شامل گواهینامههای سازندگان تجهیزات (OEM) و شرکای زنجیره تأمین است.
مشکل اینجاست که برخی از پیادهسازیهای UEFI Shell، با وجود داشتن امضای معتبر و اجازه اجرا در محیط Secure Boot، قابلیتهایی برای دستکاری مستقیم حافظه سیستم ارائه میدهند. این موضوع باعث ایجاد یک شکاف امنیتی (Security Boundary Violation) میشود؛ به این صورت که Secure Boot اجازه اجرای Shell امضا شده را میدهد، اما خودِ Shell ابزارهای لازم برای غیرفعال کردن یا دور زدن همان حفاظتی که Secure Boot ایجاد کرده است را در اختیار مهاجم قرار میدهد.
تاثیرات امنیتی و ریسکها
مهاجمی که دسترسی فیزیکی یا دسترسی سطح Administrator به سیستم داشته باشد، میتواند از این ابزارها برای اجرای کدهای غیرمجاز در مرحله Pre-boot استفاده کند. از آنجایی که این اجرا پیش از لود شدن سیستمعامل و ابزارهای امنیتی صورت میگیرد، اثرات زیر متصور است:
- پایداری (Persistence): ایجاد دسترسی دائمی در سطح پلتفرم که حتی با نصب مجدد سیستمعامل از بین نمیرود.
- عدم شناسایی: کدهای مخرب در این سطح کاملاً از دید ابزارهای EDR و آنتیویروسها پنهان میمانند.
- لود کردن درایورهای غیرمجاز: امکان بارگذاری کامپوننتهای Kernel که فاقد امضای دیجیتال هستند.
سختافزارهای تحت تاثیر
تحقیقات شرکتهای Binarly و Eclypsium نشان میدهد که نسخههایی از UEFI Shell در محصولات برندهای زیر آسیبپذیر هستند:
- Acer
- Dell
- Lenovo
- MSI
- Framework و سایر سازندگان مانند Getac و Seagate.
راهکارهای مقابله و رفع مشکل
برای کاهش این ریسک، مدیران سیستم و مهندسان امنیت باید اقدامات زیر را انجام دهند:
- بهروزرسانی Firmware: نصب آخرین آپدیتهای فریمور ارائه شده توسط سازنده سختافزار برای جایگزینی نسخههای آسیبپذیر.
- بهروزرسانی DBX: بهروزرسانی لیست Revocation (پایگاه داده DBX) در UEFI برای ابطال اعتماد به هشهای (Hashes) باینریهای آسیبپذیر یا گواهینامههای مربوطه.