
A list of public attacks on BitLocker
قائمة بالهجمات العامة على BitLocker. أي هجوم عام لديه القدرة على مهاجمة BitLocker ولكن الطريقة الدقيقة ما تزال غير عامة (مثل baton drop) خارج النطاق.
معظم الهجمات تكون للحالات التي يكون فيها VMK مغلقًا بواسطة TPM فقط، وهو الإعداد الافتراضي، وهو ما يستخدمه BitLocker التلقائي إلى جانب إيداع مفتاح الاسترداد في حساب Microsoft.
افتراضيًا، بدءًا من Windows 8، يتم استخدام التحقق من تكامل Secure Boot إذا كان Secure Boot ممكّنًا.
إذا كان يجب عليك إغلاق VMK بواسطة TPM فقط، فإن الإعداد الأكثر أمانًا لذلك هو استخدام التحقق من التكامل التقليدي مع PCRs 0 و2 و4 و7 و11 (وأيضًا إبقاء نظامك محدثًا بالكامل).
يرجى ملاحظة أن هذا يحمي فقط من الهجمات البرمجية.
الهجمات على الأجهزة عادةً ما تكون مفيدة فقط عندما يكون لدى المهاجم وصول فعلي إلى نظام حيث يكون VMK مغلقًا بواسطة TPM فقط.
| الملخص | الوصف | الإصلاح | الإطار الزمني للإفصاح العام | اكتشفه |
|---|---|---|---|---|
| التنصت على TPM: يتواصل bootmgr مع TPM بنص واضح | يتواصل Windows Boot Manager مع TPM بنص واضح، لذلك إذا تم استخدام شريحة TPM منفصلة على ناقل LPC (أي، ليست fTPM أو "Pluton"/HSP)، يمكن استخدام محلل منطقي على هذا الناقل لتفريغ VMK. انظر أيضًا مقالة Pulse Security، كود Verilog لمستشعر LPC. | لا يوجد، لكن firmware TPM لم تكن معرضة على أي حال | يناير 2019 | marcan |
| مصحح الأجهزة: بعض الأنظمة لا تقوم بالقياس إلى PCR7 قبل تمكين مصحح الأجهزة | مواصفة TCG EFI Platform الخاصة بـ TPM (القسم 6.4) تتضمن ما يلي: "إذا وفرت المنصة وضع مصحح برمجي قد يُستخدم قبل بيئة UEFI أو إذا وفرت المنصة مصححًا لبيئة UEFI، فيجب على المنصة تمديد حدث EV_EFI_ACTION إلى PCR[7] قبل السماح باستخدام المصحح" بعض الأنظمة لا تقوم بهذا القياس قبل تمكين بعض مصححات الأجهزة (مثل Intel DCI). لذلك على مثل هذا النظام المعرض للخطر، يمكن استخدام تجاوز Secure Boot (الوصول الفعلي سيسمح على الأقل بطريقتين مع بقاء Secure Boot ممكّنًا) أو هجوم على الأجهزة (الكتابة مباشرة إلى SPI flash) لتمكين مصحح الأجهزة؛ ويمكن بعد ذلك تعيين نقطة توقف (مثلًا) داخل bootmgr!FvebUnsealCallback للسماح بتفريغ VMK. انظر أيضًا هذه المقالة من مؤتمر أبحاث الأدلة الرقمية الأوروبي 2023. | لا يوجد، للأنظمة المعرضة. القائمة الدقيقة للأنظمة المعرضة غير معروفة. | مارس 2023 | الشرطة الفيدرالية البرازيلية |
| fTPM glitching: تنفيذ كود عبر glitching لاختراق حالة fTPM بالكامل | إذا كان معالج/متحكم داخل الشريحة (SoC) يطبق fTPM معرضًا للـ glitching بحيث يمكن الحصول على تنفيذ كود في وقت مبكر من الإقلاع، فيمكن اختراق حالة fTPM بالكامل، مما يؤدي إلى تفريغ VMK (إلخ). انظر أيضًا مقالة البحث، الحمولات/إلخ لـ AMD PSP | IntelME: نوفمبر 2021 / Alder Lake AMD: غير معروف، لا شيء؟ أخرى (ARM64، ARMv7، إلخ): غير معروف | أبريل 2023 | Hans Niklas Jacob، Christian Werling، Robert Buhren، Jean-Pierre Seifert من Technische Universit ät Berlin - SecT |
الهجمات البرمجية عادةً ما تكون ثغرات في bootmgr، أو تطبيق إقلاع آخر حيث يكون الاستغلال ممكنًا مع مفاتيح BitLocker المشتقة في الذاكرة لأي وحدة تخزين.
عندما يمكن الحصول على تنفيذ كود داخل تطبيق إقلاع، قد يكون من الممكن لمهاجم "المنظف الخبيث" تثبيت bootkit يعمل نفسه مع مفاتيح مشتقة في الذاكرة (أو عندما يمكن اشتقاق المفاتيح بعد)، وبالتالي اختراق نظام يُستخدم فيه كلمة مرور أو مفتاح تشغيل بدلاً من TPM أو بالإضافة إليه.
النظام المعرض للخطر سيكون لديه تحديثات مايو 2022 أو يونيو 2022 مثبتة، ولكن ليس أي تحديثات لاحقة.
GUID الخيارات المرتبطة هو جزء من البيانات المجزأة، لذلك يجب وضع علامة على عنصر الجهاز المستخدم كغير مُتحقق منه.
لا توجد عناصر يمكن استخدامها على Windows 7 والإصدارات الأقدم (على الرغم من أنه عند استخدام إعدادات مخصصة غير افتراضية، قد يظل ذلك ممكنًا).
على Windows 8 والإصدارات الأحدث، لا يتم التحقق من osloader!osdevice افتراضيًا، وبالتالي يمكن استخدامه.
أسهل طريقة لاستغلال هذا هي استخدام محرر الأجهزة الخام في BCD، bcdeditmod، على الرغم من أن تحرير سجل BCD يدويًا ممكن أيضًا (اكتشف ذلك بنفسك).
يتضمن الاستغلال:
{default} إلى العنصر الأول{default}!osdevice إلى عنصر الجهاز الأول{first}!osdevice إلى عنصر الجهاز الثانيdebug) في عنصر الجهاز الثانيbootmgfw الثنائي الذي كان يستخدمهاستمرت هذه الثغرة لأكثر من 17 عامًا، وأقدم إصدار معروف تم تقديمها فيه هو 6.0.5231.2 (winmain_idx03.051004-2120) من أكتوبر 2005.
عند استخدام التحقق من تكامل Secure Boot، سيظل هجوم خفض الإصدار يعمل لاستغلال هذه الثغرة.قم بإعداد خادم إقلاع PXE مع ملف bootmgfw.efi به ثغرة (حيث يُستخدم التحقق القديم من السلامة، يجب أن يكون هذا هو bootmgfw.efi من الجهاز الهدف) مع إعادة تسميته بشكل صحيح للإقلاع عبر EFI.
بالنسبة إلى BCD، أعدّ إدخالًا افتراضيًا واحدًا حيث يكون device هو osdevice المشفّر عبر BitLocker؛ وpath هو "\"؛ وتسلسل استرداد.
يجب أن يشير تسلسل الاسترداد إلى إدخال startup واحد، حيث يكون device هو boot، وpath يشير إلى تطبيق EFI لتشغيله (من خادم PXE)؛ ويكون pxesoftreboot مفعّلًا.
عند تعطيل Secure Boot، يمكن أن يكون تطبيق EFI هذا مجرد تطبيق لفحص الذاكرة الفعلية بحثًا عن جدول مفاتيح BitLocker لتفريغه.
عند تمكين Secure Boot، يمكن لتطبيق EFI هذا استخدام تجاوز معروف لـ Secure Boot (حيث يكون الوصول الفعلي مطلوبًا إذا لزم الأمر).
لاستغلال تطبيق إقلاع من Windows بهذه الطريقة، ستحتاج إلى استبدال BCD بملفك الثاني على خادم PXE.
وهذا يعني الضغط على مفتاح سهم أثناء بدء تشغيل bootmgr لإجبار قائمة الإقلاع على الظهور؛ ثم استبدال BCD على خادم PXE في تلك اللحظة.
يتضمن الاستغلال ما يلي:
manage-bde -pause C: متبوعًا بـ manage-bde -protectors -delete C:عند هذه النقطة، ستحتوي بيانات BitLocker الوصفية على القرص على VMK بنص واضح.
قم بتفريغه، واستخدم VMK هذا لفك تشفير FVEK.
يمكن استخدام FVEK الذي تم فك تشفيره على صورة القرص التي أُنشئت مسبقًا لفك تشفير القسم.
يرجى ملاحظة: نجحت فقط في استغلال هذه المشكلة على Windows 10 في ظروف محددة جدًا (BitLocker عبر TPM فقط بدون مفتاح استرداد). ومع ذلك، نجح آخرون في استغلال هذه المشكلة باستخدام WinRE قابلة للاستغلال على Windows 11 (Nickel).
على حد علمي، وُجدت هذه الثغرة منذ وجود مدير الإقلاع نفسه - يبدو أنها موجودة منذ وقت مبكر يصل إلى 6.0.5098.0 (winmain_beta1.050628-1740) من يونيو 2005، على الرغم من أن ذلك يسبق BCD وبالتالي سيكون الاستغلال مختلفًا في الإصدارات المبكرة جدًا. يبدو أن الكود ذي الصلة موجود أيضًا في وقت سابق (يبدو أن الكود المتعلق بالقرص الرامي (ramdisk) هو نفسه في الإصدار 5048 من أبريل 2005)، لكن الإصدار 5098 هو أقدم إصدار تم تفريغه يحتوي على BitLocker بشكل ما.
لاستغلال ذلك، تحتاج إلى إعداد إدخال افتراضي وتسلسل استرداد كما في bitpixie. والغرض من ذلك هو اشتقاق المفاتيح لجهاز نظام التشغيل عند تحميل الملف.
يجب أن يحتوي تسلسل الاسترداد على إدخال جهاز إضافي لإعداد القرص الرامي. استخدم bcdeditmod لذلك. استخدم عنصرًا مخصصًا هنا مثل custom:21100000. مثال على إدخال جهاز يمكن استخدامه هنا هو !raw:block[ram[part2[hd[gpt[{D2E23617-2338-4685-A2D7-F3133312E12E}]],gptsig[{1B85332B-AD73-4D9A-BFC3-B39443D3DFE4}]],:\hiberfil.sys:]] - ستحتاج إلى استبدال جهاز الكتلة part2 هنا بالجهاز الموجود في BCD لنظامك الهدف.
يمكن بعد ذلك تفريغ الملف من الذاكرة باستخدام أي طريقة تناسبك. أفضّل استخدام winload الأقدم للوصول إلى mcupdate الموقّع ذاتيًا عبر قائمة الخيارات المتقدمة، لكن هناك خيارات أخرى متاحة (على سبيل المثال، إعادة تشغيل ناعمة عبر PXE إلى نظام تشغيل تابع لجهة خارجية؛ يمكن تفريغ الذاكرة من WinPE باستخدام bugcheck أو برنامج تشغيل معروف بوجود ثغرة فيه، لكن winload سيضع علامة على منطقة الذاكرة على أنها خالية في خريطة ذاكرة NT لذلك قد يتم استبدالها دون إعدادات أخرى لتحديد تلك الذاكرة على أنها تالفة/إلخ في winload).
تم تضمين تنفيذ لإثبات المفهوم لأسلوبي المفضل في هذا المستودع باسم ramleak.zip. اقرأ ملف readme المرفق لتعليمات الاستخدام.
تحية إلى Maxim Suhanov، فقد كان هذا مستوحىً من قراءة شرح CrashXTS ومعرفة طريقة أخرى ربما لتفريغ hiberfil.sys.
والآن أفكاري الخاصة حول هذه الثغرة وحول yellowkey:
كانت هذه هي المرة الأولى التي أواجه فيها مشكلة حقيقية مع التقديم إلى MSRC، وكانت في الأساس سوء فهم من جانبهم يتعلق بـ Secure Boot. ونظرًا لأن ثغرة bitlocker أخرى من نوع 0day تم كشفها، قررت إصدار هذا الآن، لقد احتفظت به لما يقارب عامًا وأنا أتساءل ماذا أفعل به.
على عكس yellowkey، لن أطلق تصريحات مبالغًا فيها حول اعتبار ذلك "بابًا خلفيًا"، ففي رأيي لا أعتقد أن yellowkey باب خلفي، فالمكوّن ذو الصلة يتعلق بـ WinPE (ليس خاصًا بـ WinRE)، والثغرة الرئيسية هناك هي حذف winpeshl.ini للوصول إلى مسار الكود هذا، ويمكنني أن أفهم تمامًا لماذا اعتقدت Microsoft أن حذفه في سيناريو WinRE + bitlocker لم يكن ممكنًا.
وبما أن تحميل قرص رامي من قسم مشفّر عبر BitLocker هو في الواقع ميزة في بيئة الإقلاع، وعلى الرغم من أنني اضطررت إلى استخدام حيلة موجودة مسبقًا لجعلها تعمل فعليًا، يمكن لأشخاص آخرين أيضًا أن يقولوا إن هذا باب خلفي إذا أرادوا، لكنني لن أذهب إلى هذا الحد. بيئة الإقلاع معقدة (وتستمر في النمو، فلم يعد أحدث bootmgfw_ex.efi يتسع لصورة بحجم 2.88MB - نهاية حقبة)، وقد تم اكتشاف العديد من الثغرات بسبب كيفية تفاعل ميزات معينة مع بعضها البعض.
| تعطيل IOMMU عند الإقلاع: تعديل تخزين متغيرات UEFI غير المتطايرة عبر تفريغ/إعادة كتابة الوميض يمكن أن يعطل IOMMU عند الإقلاع | بعض برمجيات UEFI الثابتة لن تقوم بتمكين IOMMU عند الإقلاع بناءً على بيانات المتغيرات. من خلال تفريغ الفلاش، وتعديل تلك المتغيرات، وإعادة الكتابة، سيتم تعطيل IOMMU عند الإقلاع مع بقاء حالة TPM غير المتطايرة صالحة. عند تلك النقطة، يمكن للمهاجم الكتابة فوق جدول DMAR ACPI باستخدام PCI DMA قبل إطلاق bootmgr، ثم الإقلاع إلى الوضع الآمن واستخدام PCI DMA مرة أخرى للحصول على شل SYSTEM. انظر الشرح. من غير المعروف في أي مكون يقع هذا؛ يستخدم الشرح نظام Intel، والكود ذو الصلة هناك مقدم من Intel Firmware Support Package. من غير المعروف ما إذا كان المكافئ في AMD (AGESA/CBS) متأثرًا أيضًا. | Intel Firmware Support Package: غير معروف AMD AGESA/CBS: غير معروف | مارس 2026 | Craig S. Blackie من MDSec |
| الملخص | الوصف | الإصلاح | الإطار الزمني للإفصاح العام | اكتشفه |
|---|
| بيئة الإقلاع لا تمسح جدول المفاتيح السابق عند إنشاء جدول جديد | دالة تهيئة مكتبة الإقلاع تستقبل مجموعة من العلامات. إذا تم تعيين البت 7 (وهو الحال على الأقل بالنسبة لـ bootmgr)، يتم تجاهل أي جدول مفاتيح موجود، وإنشاء جدول جديد. لا يتم مسح جدول المفاتيح الموجود، ويبقى في الذاكرة. يسمح هذا للمهاجم بتحميل bootmgr مع osdevice تعسفي، ثم إما استغلال bootmgr للحصول على تنفيذ كود، أو استخدام bootmgr من RS2+ (لضمان وجود نهج Secure Boot واحد فقط) لتحميل WinPE واستخدام برنامج تشغيل معروف به ثغرة، للعثور على جدول المفاتيح وتفريغه.استخدام التحقق من التكامل التقليدي يمنع هذا الهجوم من العمل، بسبب قائمة السماح لتطبيقات الإقلاع في بيانات قسم BitLocker. | تم التخفيف في يناير 2022 (بمنع تحميل bootmgr في معظم الحالات). تم الإصلاح في مارس 2023 مع البناء 25330 (سيتم تعيين جدول المفاتيح الموجود ومسحه قبل إنشاء جدول جديد). هجوم خفض الإصدار سيظل يعمل لاستغلال هذه الثغرة. | أغسطس 2022 (مع baton drop)؛ اكتُشفت في يناير 2022. | Rairii |
| التحقق من التكامل التقليدي طبق الخيارات المرتبطة بشكل غير صحيح | التحقق من التكامل التقليدي متأثر (عند استخدام bootmgr معرض للخطر)، والتحقق من تكامل Secure Boot غير متأثر إطلاقًا التحقق من التكامل التقليدي في BitLocker يمر عبر جميع خيارات الإقلاع، وإما يتأكد من وجودها، أو يتأكد من عدم وجود أي خيارات غير معروفة، أو يتأكد من عدم تغييرها عن طريق تجزئتها (hashing). التنفيذ الأصلي حاول أيضًا المرور عبر الخيارات المرتبطة، لكنه استخدم إزاحة غير صحيحة للقيام بذلك. هذا قد يسمح بصياغة BCD يحتوي على خيارات إقلاع غير مرئية للتحقق من التكامل التقليدي في BitLocker. العديد من الخيارات الخطيرة هنا، خاصة debug، يمكن أن تؤدي إلى تفريغ جدول مفاتيح BitLocker.تم الإصلاح باستخدام الإزاحة الصحيحة عند المرور عبر الخيارات المرتبطة. هذا الخطأ هو CVE-2022-29127. | مايو 2022 | يونيو 2022 (في emfcamp، بفضل bindiffing) | Matt Wesemann من Microsoft (WDG) |
| dangerous association: التحقق من التكامل التقليدي طبق الخيارات المرتبطة بشكل غير صحيح (الجزء 2) | التحقق من التكامل التقليدي متأثر (عند استخدام bootmgr معرض للخطر)، والتحقق من تكامل Secure Boot غير متأثر إطلاقًا إصلاح الثغرة السابقة كان غير صحيح واكتفى بفحص مستوى واحد من الخيارات المرتبطة، بينما الكود الذي يستخدم خيارات الإقلاع كان يتابع بشكل تكراري (recursion). هذا قد يسمح بصياغة BCD يحتوي على خيارات إقلاع غير مرئية للتحقق من التكامل التقليدي في BitLocker. انظر أيضًا الإفصاح العام. تم الإصلاح بالتكرار في الخيارات المرتبطة مثلما تفعل بقية الأكواد. هذا الخطأ هو CVE-2022-22048. | يوليو 2022 | ديسمبر 2022؛ اكتُشفت في مايو 2022 أثناء bindiffing للتصحيح السابق | Rairii |
| bitpixie: إعادة التشغيل الناعم عبر PXE لا يمسح مفاتيح BitLocker المشتقة من الذاكرة | قابلة للاستغلال فقط على أنظمة UEFI (وليس BIOS التقليدي أو CSM). التحقق من التكامل التقليدي متأثر (عند استخدام bootmgr معرض للخطر)، والتحقق من تكامل Secure Boot متأثر إعادة التشغيل الناعم عبر PXE مسموحة عند الإقلاع من الشبكة، وتقوم فقط بـ BS->LoadImage() و BS->StartImage().مفاتيح BitLocker المشتقة ما تزال في الذاكرة في الوقت الذي يتم فيه استدعاء BS->StartImage.يمكن بعد ذلك تفريغها من الذاكرة. بالإضافة إلى ذلك: يتم اشتقاق مفاتيح BitLocker في وقت مبكر جدًا من تحميل تطبيق الإقلاع. إذا فشل تحميل PE من القرص، لا يتم تنفيذ التحقق من التكامل وتبقى المفاتيح المشتقة في الذاكرة. يمكن بعد ذلك تنفيذ إعادة تشغيل ناعم عبر PXE، وبالتالي يتجاوز هذا أيضًا التحقق من التكامل التقليدي. انظر أيضًا الإفصاح العام. تم الإصلاح بمسح جداول مفاتيح bitlocker في bootmgr!BlNetSoftReboot قبل استدعاء bootmgr!PxeSoftReboot. هذا الخطأ هو CVE-2023-21563. | نوفمبر 2022 (البناء 25236)؛ يناير 2023 (إصلاح تراجعي) عند استخدام التحقق من تكامل Secure Boot، هجوم خفض الإصدار سيظل يعمل لاستغلال هذه الثغرة. | فبراير 2023، اكتُشفت في أغسطس 2022 | Rairii |
| push button decrypt: يمكن مقاطعة إعادة التعيين في WinRE أثناء فك التشفير، مما يمكّن المهاجم من الحصول على شل لتعطيل حماة المفاتيح | Windows Server غير معرض لأنها لا تدعم ميزة إعادة التعيين. التحقق من التكامل التقليدي والتحقق من تكامل Secure Boot متأثران، عند استخدام صورة winre معرضة للخطر عند الإقلاع إلى WinRE لنظام ما، يتم اشتقاق مفاتيح لوحدة التخزين osvolume المرتبطة. يُسمح لهذه المفاتيح بالبقاء في الذاكرة عند إجراء إعادة تعيين بزر الضغط (مع إزالة البيانات). بدء إعادة تعيين "إزالة ملفاتي فقط" سيبدأ في فك تشفير القرص عند اكتمال ~98%. إعادة التشغيل عند هذه النقطة ستؤدي إلى إعادة تشغيل إلى winre والتي ستعرض خطأ وزرًا يعيد التشغيل. بعد إعادة التشغيل، يتم تشغيل إعداد Windows إلى شاشة ترقية. Shift+F10 للحصول على شل يعمل هنا.شل هنا كافٍ لإيقاف فك التشفير مؤقتًا وإزالة جميع حماة المفاتيح، ويمكن بعد ذلك استخدام VMK كنص واضح لفك تشفير FVEK الذي يمكن استخدامه مع صورة قرص تم إنشاؤها مسبقًا. تم الإصلاح بطلب مفتاح استرداد BitLocker قبل إعادة التعيين. هذا الخطأ هو CVE-2022-41099. | نوفمبر 2022 (يجب تصحيح صورة winre يدويًا) | مايو 2023 | غير معروف |
| dubious disk: تنفيذ كود عشوائي في سياق بيئة الإقلاع | استغلال هذا الخطأ أو متغيراته يحقق تنفيذ كود عشوائي في سياق بيئة الإقلاع، مما يسمح إما باشتقاق مفاتيح bitlocker (مع تنفيذ كود عشوائي في bootmgr) أو تفريغ جدول مفاتيح bitlocker (مع تنفيذ كود عشوائي في تطبيق إقلاع آخر). هذا الخطأ ومتغيراته هي CVE-2022-30203، CVE-2023-21560، CVE-2023-28269، CVE-2023-28249، (غير معروف)، و CVE-2024-38065. | إصلاحات متعددة بين يوليو 2022 ويوليو 2024. هجوم خفض الإصدار سيظل يعمل لاستغلال هذه الثغرات. | يونيو 2024 (شرح عام، يفتقد المتغير الذي أُصلح في يوليو 2024)؛ اكتُشفت في الأصل في أغسطس 2021 واستُغلت بين يناير ومارس 2022 | Rairii |
| CrashXTS: هجوم تشفيري، يسمح بإفساد دقيق لـ SYSTEM hive مما يؤدي إلى كتابة ملف الإسبات (hiberfile) بنص واضح | يستخدم BitLocker AES-XTS. من خلال أخذ عدة صور للقسم المشفر، من الممكن العثور على إزاحة SYSTEM hive، وبالتالي إزاحة مفتاح SYSTEM\ControlSet001\Control\CrashControl، وإفساد الـ hive بطريقة لا يتم فيها تحميل برنامج تشغيل الفلتر المستخدم لتشفير ملف الإسبات عند كتابته إلى القرص. لذلك، يمكن للمرء بعد ذلك إسبات النظام، وتفريغ القسم مرة أخرى، والحصول على تفريغ RAM كامل بنص واضح (مضغوط) بما في ذلك مفاتيح وحدة التخزين.انظر أيضًا الشرح العام. تم الإصلاح بالتسبب في خطأ bugcheck إذا لم يكن برنامج تشغيل الفلتر موجودًا للتحميل عندما يكون مطلوبًا. هذا الخطأ هو CVE-2025-21210. | يناير 2025 | يناير 2025 | Maxim Suhanov |
| break out in hives: عنصر systemdatadevice يجعل winload يستخدم SYSTEM hive يحدده المهاجم | بدءًا من Windows 10 (th1)، تمت إضافة دعم عنصر systemdatadevice إلى winload. إذا كان موجودًا، يقرأ winload SYSTEM hive من هذا الجهاز بدلاً من osdevice.وبالتالي، يمكن للمهاجم أخذ SYSTEM hive من WinPE، وتعديل Setup!CmdLine إلى cmd.exe، وجعل winload يستخدم هذا الـ hive عند الإقلاع إلى WinRE.عند الإقلاع إلى WinRE بعد ذلك، سيتم فتح شل SYSTEM مع مفاتيح bitlocker في الذاكرة لـ osvolume إذا كانت مشتقة؛ وبالتالي تجاوز bitlocker. تم الإصلاح بإزالة القدرة على تحميل SYSTEM hive من systemdatadevice. هذا الخطأ هو CVE-2024-20666. | يناير 2024 (يجب تصحيح صورة winre يدويًا) | فبراير 2025؛ اكتُشفت في مارس 2023 | Rairii |
| break out in hives 2: طريقة بديلة لاستغلال عنصر systemdatadevice، قابلة للاستخدام مع هجوم خفض الإصدار | إصلاح break out in hives حدّث winload. ومع ذلك، فإن الإصدارات السابقة (غير المُصلحة) من winload يمكن أن تعمل بشكل محتمل للإقلاع إلى إصدارها الرئيسي من Windows (قد لا يعمل عمليًا لكل إصدار). وبالتالي، يمكن للمهاجم إحضار winload قديم، وتعديل BCD للإقلاع منه، وتكرار الهجوم، مع وجوب استخدام طريقة استغلال مختلفة. يجب تعيين عنصر winpe في BCD (إذا لم يتم تعيينه، فسوف يفسد SYSTEM hive في osvolume المشفر بواسطة bitlocker!)الـ SYSTEM hive العامل هنا سيأتي من صورة install.wim لنفس الإصدار الرئيسي من Windows (وليس WinPE/WinRE). لن يتمكن نظام Win32 الفرعي من التهيئة بالكامل، ولكن يمكن تكوين smss في ControlSet001\Control\Session Manager!SetupExecute لتحقيق تنفيذ كود عشوائي في النظام الفرعي الأصلي كـ SYSTEM مع مفاتيح مشتقة في الذاكرة.تم الإصلاح بمسح عنصر systemdatadevice في bootmgr إذا كان Secure Boot ممكّنًا، لكن الإصلاح طُبق فقط على bootmgr_ex الموقّع من PCA 2023، لذلك بدون تمكين التخفيف KB5025885، تظل هذه الثغرة موجودة وغير مُصلحة. هذا الخطأ هو CVE-2025-21213. | يناير 2025، في bootmgr_ex الموقّع من PCA2023 فقط | فبراير 2025؛ اكتُشفت في يناير 2024 (بعد الإصلاح الأصلي) | Rairii |
| بيئة الإقلاع لا تتحقق من SDI عند تحميل ramdisk، الذي يحتوي على إزاحة WIM المستخدمة | عند تحميل ramdisk، تحصل بيئة الإقلاع (وNT wimfsf.sys) على إزاحة WIM المستخدمة من ملف SDI إذا كان موجودًا، ولا يوجد أي تحقق من ملف SDI المستخدم. لذلك يمكن استخدام ملف SDI مصمم خصيصًا في تسلسل الاسترداد للإقلاع إلى WinPE WIM تعسفي مع اشتقاق مفاتيح bitlocker الخاصة بـ osdevice.تم الإصلاح بالتحقق من أن إزاحة WIM المحسوبة تساوي إزاحة التحميل الفعلية للـ WIM، وإرجاع STATUS_INVALID_IMAGE_FORMAT إذا لم تكن كذلك. هذا الخطأ هو CVE-2025-48804. | يوليو 2025 | أغسطس 2025 (في Black Hat) | Alon Leviev و Netanel Ben Simon من Microsoft (MORSE) |
YellowKey والمعروف أيضًا باسم trans writes (مرآة، كلمة المرور: bitlocker): يمكن لملفات معاملات نظام الملفات الموجودة على وحدة تخزين أن تؤثر على ملفات على وحدة تخزين أخرى | قدم Germanium ميزة جديدة لمعاملات نظام الملفات (غير مرتبطة بمعاملات NTFS). السجلات الخاصة بذلك موجودة على القرص ويتم تحليلها بواسطة fstx.dll (جزء من حزمة الصيانة)، وفي WinPE فقط يتم تحميلها بواسطة ملف تنفيذي أصلي جديد autofstx.exe ("أداة استرداد تحديثات FsTx عند الإقلاع" - "تعمل هذه الأداة على استرداد تحديثات FsTx الفاشلة عند الإقلاع.") والتي يشغلها smss بسبب إدخال في السجل.تحتوي هذه السجلات على مسارات NT كاملة، وبالتالي يمكنها التأثير على ملفات على وحدة تخزين أخرى. يمكن استخدام هذا عند الإقلاع إلى WinRE مع توصيل محرك أقراص قابل للإزالة (منسق بـ NTFS) لحذف winpeshl.ini على ramdisk. مع حذف هذا الملف، سيقوم winpeshl.exe بإطلاق شل SYSTEM إذا تم الضغط على مفتاح Ctrl، مع مفاتيح bitlocker المشتقة الخاصة بـ osvolume في الذاكرة.انظر أيضًا شرح إضافي بقلم Will Dormann. هذا الخطأ هو CVE-2026-45585. | يونيو 2026 | مايو 2026 | Nightmare-Eclipse |
| ram leak: بيئة الإقلاع لا تفرض قيودًا على جهاز إنشاء ramdisk | عند التهيئة لإنشاء ramdisk، يتم توفير الملف الذي سيتم تحميله والجهاز الذي سيتم التحميل منه في BCD. بيئة الإقلاع لا تتحقق من الجهاز الذي يتم تمريره، وبالتالي يُسمح بالأقسام المشفرة بـ BitLocker، بافتراض إمكانية اشتقاق المفاتيح. لذلك، يمكن للمهاجم إعداد ramdisk بملف تعسفي من قسم مشفر بـ BitLocker، وستبقى محتويات الملف في RAM حتى إذا تم مسح مفاتيح BitLocker المشتقة، ويمكن تفريغها لاحقًا. بالإضافة إلى ذلك، يمكن للمهاجم استخدام هذا لتحديد ما إذا كان ملف موجودًا على قسم نظام تشغيل مشفر بـ BitLocker. الأهداف المثيرة للاهتمام تشمل: ملف الإسبات (يحتوي على مفاتيح bitlocker المشتقة، وهو مضغوط لذا يجب أن يتسع بالكامل في RAM، خاصة إذا تم "إيقاف التشغيل" والمعروف أيضًا باسم تسجيل الخروج ثم الإسبات من شاشة تسجيل الدخول)، pagefile، SYSTEM و SAM hives، أي خدمة أو برنامج تشغيل تابع لجهة خارجية (تم تحديده من SYSTEM hive) للتحقق من وجود ثغرات. | لا يوجد. أغلقت MSRC كأولوية منخفضة بسبب سوء الفهم. | مايو 2026، اكتُشفت في الأصل في مارس 2025. | Rairii |
| bitskrieg: إقلاع WinRE لا يمنع خدمات الإدارة الطارئة | تسمح خدمات الإدارة الطارئة بالتحكم في نظام Windows قيد التشغيل من منفذ تسلسلي باستخدام وحدة التحكم الإدارية الخاصة، والتي تتضمن القدرة على تشغيل شل SYSTEM. هذا مسموح به في WinRE، وبالتالي يمكن استخدامه لفتح شل SYSTEM مع مفاتيح bitlocker المشتقة الخاصة بـ osvolume في الذاكرة. | لا يوجد، أُسقطت كثغرة يوم صفري (0day). | يونيو 2026 | Jonas Lyk |