پژوهش Check Point: BTR.sys می‌تواند نرم‌افزارهای امنیتی را در مرحلهٔ بوت حذف کند

پژوهشگران Check Point Research نشان دادند درایور زمان-بوت Microsoft Defender به نام BTR.sys (Boot Time Removal Tool) می‌تواند بدون بهره‌برداری از آسیب‌پذیری نرم‌افزاری و بدون وارد کردن درایور خارجی، در سطح هسته عملیات دلخواه روی فایل‌ها و رجیستری ویندوز انجام دهد. این رفتار روی نسخه‌های مختلف ویندوز از Windows 7 تا Windows 11 25H2 تکرارپذیر است.

نکات کلیدی

  • BTR.sys با سطح دسترسی Ring 0 اجرا می‌شود و به شناسهٔ فرآیند System (PID 4) منتسب می‌شود.
  • قادر به حذف یا جابجایی فایل‌ها و دایرکتوری‌های قفل‌شده و تغییر محتوای System32\drivers است.
  • می‌تواند کلیدها و مقادیر رجیستری را حذف یا مقداردهی کند و حالت‌هایی برای اجرای عملیات در راه‌اندازی بعدی برنامه‌ریزی نماید.
  • برای بهره‌برداری، مهاجم به دسترسی مدیریتی و امتیاز SeLoadDriverPrivilege نیاز دارد.

چطور ممکن شد؟

محقق Jiří Vinopal پروتکل تراکنش داخلی BTR.sys را مهندسی معکوس کرد و دریافت بسته‌های پیکربندی (configuration blob) با الگوریتم RC4 و یک کلید 256 بایتی سخت‌کدشده در بخش .rdata هر نسخهٔ BTR.sys رمزنگاری می‌شوند. در بررسی 18 نسخهٔ 64-بیتی از زمان Windows 7 این کلید تغییری نکرده بود.

ابزار اثبات‌مفهوم و شیوهٔ نصب

ابزار اثبات‌مفهوم تیم، BTR_CLI، ابتدا MpEngine.dll را در پوشهٔ به‌روزرسانی‌های تعاریف Defender پیدا و BTR.sys جاسازی‌شده را استخراج می‌کند. سپس یک تراکنش معتبر رمزنگاری‌شده تولید کرده و درایور را با نوشتن مستقیم در رجیستری HKLM و تنظیم Type=1، Start=1 و Group="Boot Bus Extender" نصب می‌کند؛ روشی که از Service Control Manager عبور می‌کند و رخداد Windows Event ID 7045 ثبت نمی‌کند.

قابلیت‌های سطح هسته و «پنجرهٔ طلایی»

محققان یک بازهٔ زمانی خاص را «پنجرهٔ طلایی» توصیف کردند: فاصله‌ای پس از قابل نوشتن شدن فایل‌سیستم و پیش از راه‌اندازی سرویس‌های حالتِ کاربر Defender. در این بازه BTR.sys می‌تواند باینری‌های امنیتی مانند WdFilter.sys و MsMpEng.exe را حذف کند پیش از آنکه فرصت قفل شدن بیابند. در نمایش زندهٔ Black Hat، ابزار BTR_CLI توانست کل استک Defender را روی یک ماشین Windows 11 25H2 با Tamper Protection فعال حذف کند.

نیازمندی‌ها و مرز اعتماد

برای بهره‌برداری به یک حساب با دسترسی مدیر و امتیاز SeLoadDriverPrivilege نیاز است؛ این امتیاز را ابزار BTR_CLI برای حساب‌هایی که آن را دارند فعال می‌کند. بنابراین مسئله بیشتر یک «مرز اعتماد معماری» است تا آسیب‌پذیری سنتی که بتوان به‌سرعت وصله‌اش کرد.

واکنش و سابقه

پس از افشای مسئولانه، تیم مایکروسافت (MSRC) اعلام کرد این یافته‌ها شرایط ارائهٔ وصلهٔ فوری را ندارند زیرا تکنیک مبتنی بر امتیازات مدیریتی قبلاً موجود است. Check Point Research نیز گزارش کرده تا کنون شواهدی از سوءاستفادهٔ واقعی در طبیعت نیافته‌اند و مهندسی تشخیص مبتنی بر رفتار امکان‌پذیر است.

این درایور پیش‌تر نیز در سال 2021 مورد توجه قرار گرفته بود؛ پژوهشگر SentinelLabs، Kasif Dekel، آسیب‌پذیری CVE-2021-24092 را گزارش کرد که مایکروسافت آن را در فوریهٔ 2021 وصله نمود.

کاهش ریسک: توصیه‌های عملی

اگرچه رفع کامل مسئله بدون تغییرات معماری ساده نیست، تیم‌های امنیتی و ادمین‌ها می‌توانند با اقدامات زیر احتمال سوءاستفاده را کاهش دهند:

  • محدود کردن و بازبینی دقیق حساب‌های محلی با امتیازات بالا، به‌ویژه SeLoadDriverPrivilege.
  • تقویت ثبت لاگ و پایش: رصد نوشتن مستقیم به رجیستری HKLM و نصب سرویس‌ها بدون رخداد 7045.
  • طراحی قواعد EDR برای شناسایی استخراج و اجرای BTR.sys از MpEngine.dll و الگوهای تراکنش رمزنگاری‌شده مبتنی بر RC4.
  • آماده‌سازی طرح بازیابی: تهیهٔ بک‌آپ از پیکربندی Defender و اسکریپت‌های بازگردانندهٔ سرویس برای رفع سریع حذف استک امنیتی.
  • آگاهی‌رسانی به تیم‌های عملیاتی و ایجاد کنترل دسترسی مبتنی بر کمترین امتیاز (least privilege).

جمع‌بندی

افشای رفتار BTR.sys یادآور می‌کند اجزای امضاشده و معتبر سیستم‌عامل می‌توانند در شرایط خاص به ابزار هجومی تبدیل شوند، خصوصاً اگر مهاجم دسترسی مدیریتی داشته باشد. هرچند تا کنون شواهدی از سوءاستفادهٔ واقعی منتشر نشده، اعمال قواعد تشخیص، محدودسازی دسترسی‌ها و آماده‌سازی روند بازیابی از هم‌اکنون ضروری است تا هزینهٔ سوءاستفاده افزایش یابد و احتمال موفقیت آن کاهش پیدا کند.

برای مطالعهٔ کامل گزارش Check Point به صفحهٔ آن‌ها مراجعه کنید و برای اطلاعات پس‌زمینه دربارهٔ Microsoft Defender می‌توانید صفحهٔ Wikipedia را ببینید.