مهاجمان میتوانند اجزای هسته ویندوز را کاهش دهند تا ویژگیهای امنیتی مانند اجرای امضای درایور (Driver Signature Enforcement) را دور بزنند و روتکیتها را بر روی سیستمهای کاملاً بهروز شده مستقر کنند.
مهاجمان میتوانند با تسلط بر فرآیند بهروزرسانی ویندوز، نرمافزارهای قدیمی و آسیبپذیر را به سیستمهای بهروز شده اضافه کنند. این کار به آنها این امکان را میدهد که به اجزای نرمافزاری آسیبپذیر دسترسی پیدا کنند، در حالی که سیستمعامل همچنان وضعیت بهروزرسانی کامل را حفظ میکند و به نظر میرسد که همه چیز بهروز است. این وضعیت میتواند به مهاجمان اجازه دهد تا آسیبپذیریها را مورد سوءاستفاده قرار دهند.
کاهش نسخه ویندوز
یک محقق امنیتی از شرکت SafeBreach به نام Alon Leviev، یک مشکل مربوط به تصاحب بهروزرسانی (update takeover) را گزارش کرده است. با این حال، شرکت مایکروسافت این گزارش را رد کرده و بیان کرده که این مشکل نمیتواند از مرزهای امنیتی مشخصشده عبور کند. اما مایکروسافت اذعان کرده که این موضوع در صورتی ممکن است که فردی بتواند کد هستهای را با دسترسی مدیر اجرا کند، که نشاندهنده یک آسیبپذیری بالقوه در امنیت سیستم است.
Alon Leviev در دو کنفرانس امنیتی معروف، BlackHat و DEFCON، توانسته است نشان دهد که حملهای که به آن اشاره شده، امکانپذیر است. با این حال، هنوز راهحلی برای این مشکل ارائه نشده است. این موضوع باعث میشود که آسیبپذیریهایی برای حملات کاهش نسخه یا بازگشت به نسخه قبلی وجود داشته باشد که میتواند توسط مهاجمان مورد سوءاستفاده قرار گیرد.
این محقق ابزاری به نام Windows Downdate منتشر کرد که امکان ایجاد کاهشهای سفارشی را فراهم میکند و یک سیستم هدف که بهظاهر کاملاً بهروز شده است را در معرض آسیبپذیریهای قبلاً برطرف شده از طریق اجزای قدیمی، مانند DLLها، درایورها و هسته NT قرار میدهد.
Alon Leviev توضیح می دهد : من توانستم یک دستگاه ویندوز که بهطور کامل بهروز شده بود را به آسیبپذیریهای گذشته حساس کنم، بهطوری که آسیبپذیریهای برطرفشده را دوباره غیرقابلرفع کرده و اصطلاح ‘کاملاً بهروز شده’ را بر روی هر دستگاه ویندوز در دنیا بیمعنا کردم.
با وجود اینکه امنیت هسته در طول سالها بهطور قابل توجهی بهبود یافته است، لوییو توانست ویژگی اجرای امضای درایور (DSE) را دور بزند و نشان دهد که چگونه یک مهاجم میتواند درایورهای هستهای بدون امضا را بارگذاری کند تا بدافزار روتکیت را مستقر کند که کنترلهای امنیتی را غیرفعال کرده و فعالیتهایی را پنهان میکند که ممکن است به شناسایی نفوذ منجر شود.
Leviev میگوید: ‘در سالهای اخیر، بهبودهای قابل توجهی برای تقویت امنیت هسته پیادهسازی شده است، حتی با این فرض که ممکن است با امتیازات مدیر (Administrator) به خطر بیفتد.
در حالی که تدابیر امنیتی جدید باعث میشوند که نفوذ به هسته سیستمعامل ویندوز سختتر شود، اما امکان کاهش نسخه (downgrade) اجزای موجود در هسته به مهاجمان این فرصت را میدهد که بهراحتی از آسیبپذیریها استفاده کنند. این موضوع به نوعی تضاد بین امنیت جدید و آسیبپذیریهای موجود را نشان میدهد و هشدار میدهد که اگر مهاجمان بتوانند اجزای هسته را به نسخههای قدیمیتر و آسیبپذیرتر برگردانند، میتوانند بهراحتی به سیستم نفوذ کنند.
Leviev روش بهرهبرداری خود را ‘ItsNotASecurityBoundary’ نامید که دور زدن DSE است، زیرا بخشی از نقصهای کاذب عدم تغییر فایل (file immutability) به شمار میآید، که یک دسته جدید از آسیبپذیریها در ویندوز است که در تحقیق گابریل لاندو از Elastic توصیف شده و بهعنوان راهی برای دستیابی به اجرای کد دلخواه با امتیازات هستهای معرفی شده است.
هدف قرار دادن Kernel
در تحقیق جدیدی که امروز منتشر شد، لوییو نشان میدهد که چگونه یک مهاجم میتواند از فرآیند بهروزرسانی ویندوز برای دور زدن حفاظتهای DSE با کاهش نسخه یک مؤلفه بهروزرسانی شده، حتی در سیستمهای ویندوز ۱۱ که بهطور کامل بهروز شدهاند، سوءاستفاده کند.
این حمله با جایگزینی فایل ‘ci.dll’ که مسئول اجرای DSE است، با یک نسخه بدون اصلاح که امضای درایورها را نادیده میگیرد، ممکن است، که بهطور اساسی چکهای حفاظتی ویندوز را دور میزند.
این جایگزینی توسط بهروزرسانی ویندوز فعال میشود و از یک شرایط خوانش دوگانه سوءاستفاده میکند، جایی که نسخه آسیبپذیر ci.dll بلافاصله پس از شروع بررسی آخرین نسخه ci.dll توسط ویندوز، در حافظه بارگذاری میشود.
این race window اجازه میدهد تا ci.dll آسیبپذیر بارگذاری شود در حالی که ویندوز فکر میکند که فایل را تأیید کرده است، بنابراین اجازه بارگذاری درایورهای بدون امضا به هسته داده میشود.
محقق در یک ویدیو به نمایش میگذارد که چگونه توانسته است با استفاده از حمله کاهش نسخه (downgrade attack)، وصله امنیتی “اجرای امضای درایور” (DSE) را به نسخهای قدیمیتر برگرداند و از آسیبپذیریهای موجود در آن مؤلفه سوءاستفاده کند. همچنین تأکید میکند که این عمل حتی بر روی یک دستگاه ویندوز ۱۱ که بهروز است، انجام شده است، که نشاندهنده خطرات جدی در برابر امنیت سیستمهای مدرن میباشد.
Leviev همچنین روشهایی را برای غیرفعال کردن یا دور زدن امنیت مبتنی بر مجازیسازی (VBS) مایکروسافت توصیف میکند که یک محیط ایزوله برای ویندوز ایجاد میکند تا منابع اساسی و داراییهای امنیتی مانند مکانیزم یکپارچگی کد هستهای امن (skci.dll) و اعتبارنامههای کاربر تأیید شده را محافظت کند.
VBS معمولاً به محافظتهایی مانند قفلهای UEFI و پیکربندیهای رجیستری متکی است تا از تغییرات غیرمجاز جلوگیری کند، اما اگر با امنیت حداکثری (پرچم “اجباری”) پیکربندی نشده باشد، میتوان آن را با انجام تغییرات هدفمند در کلیدهای رجیستری غیرفعال کرد.
زمانی که VBS بهطور جزئی فعال باشد، فایلهای کلیدی VBS مانند ‘SecureKernel.exe’ میتوانند با نسخههای خراب جایگزین شوند که عملکرد VBS را مختل کرده و راه را برای دور زدن ‘ItsNotASecurityBoundary’ و جایگزینی ‘ci.dll’ باز میکند.
تحقیقات Leviev نشان داده است که حملات کاهش نسخه (downgrade attacks) هنوز امکانپذیر هستند و میتوانند از روشهای مختلفی انجام شوند. هرچند ممکن است این حملات نیاز به دسترسیهای ویژه یا امتیازاتی داشته باشند، اما هنوز هم امکانپذیر هستند.