نصب همه بهروزرسانیهای ویندوز باید خیال کاربر را از بابت آسیبپذیریهای شناختهشده راحت کند؛ اما ماجرای بوتکیت BlackX نشان میدهد که امنیت فرایند راهاندازی پیچیدهتر از این حرفهاست. سازمانهایی قربانی این بدافزار شدهاند که وصلههای مرتبط مایکروسافت را نصب کرده بودند. همین اتفاق پرسشی جدی ایجاد کرده است: وقتی سیستم بهروز است، مهاجم چگونه همچنان راهی برای عبور از سد امنیتی پیدا میکند؟
برای فهم این ماجرا باید به تفاوت میان اصلاح یک نقص امنیتی و لغو اعتماد به نسخههای قدیمی نرمافزار توجه کرد؛ تفاوتی که پیشتر در حملات بوتکیت BlackLotus هم نقش تعیینکنندهای داشت.
BlackLotus؛ عبور از Secure Boot در ویندوز ۱۱ بهروز
در سال ۲۰۲۳، BlackLotus به نخستین بوتکیت UEFI تبدیل شد که توانایی آن برای دور زدن Secure Boot در سیستمهای کاملاً بهروز ویندوز ۱۱، در حملات واقعی بهصورت عمومی مستند شده بود. این بدافزار با شکستن زنجیره اعتماد هنگام راهاندازی، میتوانست پیش از بارگذاری کامل ویندوز و فعال شدن بسیاری از سازوکارهای دفاعی، کد مخرب اجرا کند.
نکته مهم این بود که مایکروسافت آسیبپذیری مورد استفاده آن را در سال ۲۰۲۲ وصله کرده بود. بااینحال، اصلاح نسخه جدید بهتنهایی جلوی سوءاستفاده از نسخههای قدیمی و آسیبپذیر را نگرفت.
UEFI چیست و چرا هدف جذابی برای مهاجمان است؟
UEFI، کوتاهشده عبارت Unified Extensible Firmware Interface، نوعی میانافزار است که بلافاصله پس از روشن شدن رایانه اجرا میشود. این بخش پیش از سیستمعامل وارد عمل میشود و مقدمات راهاندازی آن را فراهم میکند.
- تنظیمات پیکربندی سیستم را بارگذاری میکند.
- قطعات سختافزاری را شناسایی و آماده کار میکند.
- شرایط لازم برای آغاز اجرای سیستمعامل را فراهم میکند.
- از طریق قابلیت Secure Boot، اعتبار نرمافزارهای دخیل در راهاندازی را بررسی میکند.
Secure Boot چگونه زنجیره اعتماد میسازد؟
Secure Boot پیش از اجازه اجرای هر بخش از نرمافزار راهانداز، امضای دیجیتال آن را بررسی میکند. هدف این است که مهاجم، حتی پس از دسترسی فیزیکی به دستگاه یا نفوذ از طریق بدافزار، نتواند کد راهانداز غیرمجاز را جایگزین نرمافزار معتبر کند.
یکی از اجزایی که باید امضای دیجیتال معتبر داشته باشد، مدیر راهاندازی یا Boot Manager است. این جزء روی یک پارتیشن کوچک و اختصاصی درایو قرار دارد و مسئول شروع بارگذاری سیستمعامل است. بنابراین، وجود ضعف در آن میتواند امنیت مراحل بعدی راهاندازی را هم تحت تأثیر قرار دهد.
نقص Baton Drop چه راهی برای نفوذ باز کرد؟
هر دو بوتکیت BlackLotus و BlackX از نقصی موسوم به Baton Drop سوءاستفاده میکنند. این آسیبپذیری با شناسه CVE-2022-21894، یک ایراد منطقی در مدیر راهاندازی ویندوز است که امکان دور زدن Secure Boot را فراهم میکند. در شرایط مشخص، استخراج کلیدهای رمزگذاری BitLocker نیز از پیامدهای احتمالی آن است.
مایکروسافت این نقص را در سال ۲۰۲۲ اصلاح کرد، اما در همان مقطع، اعتماد به گواهی مورد استفاده برای امضای مدیرهای راهاندازی قدیمی و آسیبپذیر را لغو نکرد. در نتیجه، نسخهای قدیمی میتوانست همچنان امضایی مورد اعتماد داشته باشد، با وجود اینکه از نظر امنیتی آسیبپذیر بود. BlackLotus از همین فاصله استفاده کرد و در ادامه، یک درایور مخرب در سطح هسته بارگذاری کرد.
چرا وصله کردن با لغو اعتماد یکسان نیست؟
وصله امنیتی، ایراد موجود در نسخه اصلاحشده را برطرف میکند؛ اما لغو اعتماد مشخص میکند که نسخههای قدیمی دیگر اجازه اجرا نداشته باشند. معتبر بودن امضای دیجیتال لزوماً به معنای بینقص بودن کد نیست. اگر یک جزء آسیبپذیر همچنان مورد اعتماد باشد، بررسی امضا بهتنهایی برای جلوگیری از سوءاستفاده کافی نخواهد بود.
بهروزرسانیهای مایکروسافت و پرسش بیپاسخ BlackX
مایکروسافت در سالهای ۲۰۲۳ و ۲۰۲۴ بهروزرسانیهای تکمیلی منتشر کرد. بهروزرسانی نخست، گواهی جدیدی اضافه کرد که مدیرهای راهاندازی آسیبپذیر دیگر تحت اعتماد آن نبودند. بهروزرسانی دوم نیز امکان لغو اعتماد به گواهی دیجیتال مورد استفاده برای امضای مدیرهای راهاندازی قدیمی و آسیبپذیر ویندوز را فراهم کرد.
بااینحال، سازمانهای آلوده به BlackX همه این وصلهها را نصب کرده بودند. این موضوع نشان میدهد که برای توضیح رخداد، صرف اطلاع از نصب بودن بهروزرسانیها کافی نیست؛ باید وضعیت واقعی زنجیره اعتماد و اعمال محدودیتهای مربوط به اجزای قدیمی نیز روشن شود.
آیا میتوان مایکروسافت را مقصر دانست؟
اطلاعات ارائهشده، نقش لغو نشدن اعتماد به گواهی قدیمی در سوءاستفاده BlackLotus را روشن میکند، اما جزئیات کافی برای تعیین علت دقیق آلودگیهای BlackX در اختیار نمیگذارد. بنابراین، نمیتوان با قطعیت گفت چرا سازمانهای یادشده با وجود نصب وصلهها آلوده شدند یا مسئولیت این رخداد دقیقاً بر عهده چه کسی است.
درس روشن این ماجرا آن است که امنیت راهاندازی فقط به وجود یک نسخه اصلاحشده وابسته نیست؛ جلوگیری از اجرای اجزای قدیمی و آسیبپذیر نیز بخشی اساسی از حفظ زنجیره اعتماد است.
نظر، سوال یا تجربه خود را درباره این مطلب با سایر کاربران اوکالا به اشتراک بگذارید.