تمامی نرم افزارها و سیستم عاملها دارای آسیب پذیری هستند که پس از شناسایی پچ و به روزرسانی میشوند. تکنیک حمله Downgrade درست در نقطه مقابل این جریان قرار دارد و با هدف بازگرداندن نرم افزار یا سیستم عامل آپگرید شده (به روزرسانی شده) به نسخه قدیمی و آسیب پذیر و سوء استفاده از باگها و آسیب پذیریها انجام میشود.
این تکنیک، سیستم را در معرض اکسپلویتهای شناخته شده و نفوذ در سطح عمیق از جمله هایپروایزر و کرنل امن قرار میدهد.
تکنیک Downgrade میتواند برای دور زدن اجرای امضای درایور مایکروسافت ([1]DSE) در سیستمهای ویندوز پچ شده مورد سوء استفاده قرار گیرد که منجر به Downgrade سیستم عامل میشود.
این تکنیک دور زدن، امکان بارگیری درایورهای کرنل بدون امضا را فراهم میآورد و هکرها را قادر میسازد تا روت کیتهای سفارشی را مستقر کنند که میتواند کنترل های امنیتی را خنثی و فرآیندها و فعالیتهای شبکه را مخفی سازد.
جدیدترین یافتهها حاکی از دو آسیب پذیری افزایش سطح دسترسی در فرآیند به روزرسانی ویندوز (CVE-2024-21302 و CVE-2024-38202) است که میتوانند برای بازگرداندن یک نرمافزار به روزرسانی شده ویندوز به نسخههای قدیمیتر دارای آسیب پذیری پچ نشده مورد استفاده قرار گیرند.
این اکسپلویت در قالب ابزاری به نام Windows Downdate ارائه میشود که به گفته آلون لویف، محقق SafeBreach، میتوان از آن برای ربودن فرآیند به روزرسانی ویندوز به منظور ایجاد Downgrade کاملاً غیرقابل شناسایی، مداوم و غیرقابل بازگشت در کامپوننتهای حیاتی سیستمعامل استفاده کرد.
متاسفانه آپدیتهای استاندارد و چکهای سلامت سیستم حتی پس از این اتفاق، گزارش خواهند داد که همهچیز به روز و درست است! این کار میتواند عواقب جبران ناپذیری داشته باشد، چرا که هکرها امکان جایگزین بهتری برای حملات خود خواهند داشت که BYOVD میباشد. BYOVD[2] به آنها اجازه میدهد تا ماژولهایی همچون خود کرنل سیستم عامل Downgrade شوند.
آخرین رویکرد ابداع شده توسط آلون لویف از ابزار Downdate برای downgrade کردن پچ بای پس DSE یا”ItsNotASecurityBoundary” در یک سیستم کاملاً به روزرسانی شده ویندوز 11 استفاده میکند.
ItsNotASecurityBoundary برای اولین بار توسط گابریل لاندو محقق آزمایشگاه Elastic Security در ژوئیه 2024 در کنار PPLFault مستند شد و به عنوان یک کلاس باگ جدید با نام Fase File Immutability مورد بررسی قرار گرفت. مایکروسافت این باگ را در اوایل ماه می پچ کرد.
این باگ از یک وضعیت یا شرایط رقابتی یا race condition برای جایگزینی یک فایل کاتالوگ امنیتی تایید شده با یک نسخه مخرب حاوی امضای کد احراز هویت برای یک درایور کرنل بدون امضا استفاده میکند و به دنبال آن هکر از کرنل میخواهد تا درایور را بارگیری کند.
مکانیزم یکپارچگی کد مایکروسافت که برای احراز هویت یک فایل با استفاده از کتابخانه حالت کرنل ci.dll استفاده میشود، کاتالوگ امنیتی مخرب را تجزیه و تحلیل میکند تا امضای درایور را تأیید و آن را بارگیری نماید و عملاً به مهاجم این امکان را میدهد که کد دلخواه را در کرنل اجرا کند!
دور زدن DSE با استفاده از ابزار Downdate برای جایگزینی کتابخانه “ci.dll” با نسخه قدیمیتر به منظور ابطال پچی که توسط مایکروسافت دریافت شده است، صورت میپذیرد.
حال باید یه این نکته اشاره کرد که یک مانع امنیتی وجود دارد که میتواند از موفقیت آمیز بودن چنین حملهای جلوگیری کند. اگر امنیت مبتنی بر مجازی سازی ([3]VBS) بر روی میزبان مورد نظر در حال اجرا باشد، اسکن کاتالوگ توسط skci.dll[4] مغایر با ci.dll انجام میشود.
معماری ویندوز از سال 2015 برای جلوگیری از نفوذ به کرنل ویندوز که منجر به تخریب کل سیستم میشود، مجددا طراحی شده است. این طراحی و تغییرات شامل طیف وسیعی از اقدامات امنیتی است که در مجموع به عنوان امنیت مبتنی بر مجازی سازی (VBS) شناخته میشود.
از سوی دیگر هایپروایزر سیستم برای جداسازی کامپوننتهای سیستم عامل و ایجاد یک کرنل امن به منظور انجام حساسترین عملیات، ذخیره رمزهای عبور و دیگر موارد استفاده میگردد.
برای جلوگیری از غیرفعال سازی VBS توسط هکرها، میتوان ویندوز را طوری پیکربندی کرد که این کار حتی با سطح دسترسی admin غیرممکن شود. تنها راه موجود، غیرفعال سازی این حفاظت، راه اندازی مجدد کامپیوتر در حالت ویژه و وارد کردن دستور صفحه کلید است. این ویژگی، قفل کردن UEFI یا UEFI lock نامیده می شود.
حمله Windows Downdate با جایگزینی فایلها با نسخههای تغییر یافته، قدیمی و آسیب پذیر، این محدودیت را نیز دور میزند. VBS فایلهای سیستم را از نظر به روز بودن بررسی نمیکند، از این رو میتوان آنها را با نسخههای قدیمیتر و آسیب پذیر جایگزین کرد. یعنی VBS از نظر فنی غیرفعال نیست، اما این ویژگی دیگر عملکرد امنیتی خود را انجام نمیدهد.
این حمله امکان جایگزینی فایلهای کرنل امن و هایپروایزر با نسخههای آسیب پذیر را فراهم میکند که سوء استفاده از آنها منجر به افزایش سطح دسترسی میشود. در نتیجه، مهاجمان حداکثر سطح دسترسی سیستم، دسترسی کامل به هایپروایزر و فرآیندهای محافظت شده در حافظه، و توانایی خواندن رمزهای عبور هش شده و دریافت هشهای NTLM از حافظه را خواهند داشت. این دادهها میتوانند برای گسترش حمله در شبکه مورد استفاده قرار گیرند.
با این حال، شایان ذکر است که پیکربندی پیشفرض سیستم عامل، VBS بدون قفل UEFI[5] است. در نتیجه، مهاجم میتواند با دستکاری کلیدهای رجیستری EnableVirtualizationBasedSecurity و RequirePlatformSecurityFeatures آن را غیرفعال نماید.
حتی در مواردی که قفل UEFI فعال است، هکرها میتوانند VBS را با جایگزین کردن یکی از فایلهای اصلی با یک نمونه نامعتبر غیرفعال کنند. در نهایت، مراحلی که مهاجم باید دنبال نماید به شرح زیر میباشد:
- غیرفعال سازی VBS در رجیستری ویندوز یا ابطال exe؛
- downgradeکردن dll به نسخه پچ نشده؛
- راه اندازی مجدد دستگاه؛
- بهره برداری از بای پس DSE ItsNotASecurityBoundary به منظور دستیابی به اجرای کد در سطح کرنل.
مقابله با ابزار Downdate
مایکروسافت در فوریه 2024 از آسیب پذیریهای Downdate مطلع شد اما در به روزرسانیهای Patch Tuesday خود در 13 آگوست و 8 اکتبر 2024، به ترتیب آسیب پذیریهای CVE-2024-21302 و CVE-2024-38202 را برطرف کرد.
مایکروسافت اکنون چند توصیه امنیتی برای کاهش خطرات این حمله ارائه کرده است:
- ممیزی کاربران مُجاز به انجام عملیات بازیابی و به روزرسانی سیستم، به حداقل رساندن تعداد این کاربران و لغو مجوزها در صورت امکان.
- پیاده سازی لیستهای کنترل دسترسی (ACL/DACL) برای محدود کردن دسترسی و اصلاح فایلهای به روزرسانی.
- پیکربندی مانیتورینگ رخدادها به منظور شناسایی مواردی که از سطح دسترسی بالا برای تغییر یا جایگزینی فایلهای بهروزرسانی استفاده میکنند.
- نظارت بر اصلاح و جایگزینی فایلهای مرتبط با زیرسیستم VBS و پشتیبان گیری از فایلهای سیستمی.
نظارت بر این رخدادها با استفاده از SIEM و EDR نسبتاً ساده است. تمامی موارد فوق نه تنها برای ماشینهای فیزیکی، بلکه برای ماشینهای مجازی ویندوز در محیطهای ابری نیز صدق میکنند.
توصیه میشود برای ماشینهای مجازی در Azure، تلاشهای غیرمعمول برای ورود به سیستم با سطح دسترسی admin نظارت شود و MFA یا مکانیزم احراز هویت چند عاملی فعال گردد.
[1] Driver Signature Enforcement
[2] Bring Your Own Vulnerable Driver
[3] Virtualization-Based Security
[4] Secure Kernel Code Integrity DLL
[5] Unified Extensible Firmware Interface
منابع
مقالات پیشنهادی:
بهروزرسانی Patch Tuesday ماه اکتبر مایکروسافت
به روزرسانی Patch Tuesday ماه آگوست ۲۰۲۴ مایکروسافت
حمله Downgrade ویندوز و سوء استفاده از آسیب پذیریهای قدیمی
حمله LogoFAIL و استفاده از فایلهای تصویری برای نفوذ به کامپیوترها
آسیب پذیری Phoenix UEFI، چندین CPU اینتل را تحت تأثیر قرار میدهد