
بحث حول CVE-2025-3052، وهي ثغرة أمنية في برنامج Insyde الثابت (firmware) تكشف عن قدرة كتابة عشوائية قادرة على تعديل مؤشرات حساسة أمنيًا.
يُركّز هذا المستودع المواد البحثية المتعلقة بـ CVE-2025-3052، وهي ثغرة فساد ذاكرة في وحدة UEFI موقّعة بشهادة Microsoft الخاصة بطرف ثالث، تتيح للمهاجم إفساد بنى البرامج الثابتة الحساسة أمنيًا، وتعطيل فرض Secure Boot، وتنفيذ تعليمات برمجية عشوائية غير موقّعة قبل تحميل نظام التشغيل. يتضمن تحليلًا تقنيًا للسبب الجذري وتقنية الاستغلال، وملفات ثنائية حقيقية وتعليمية قابلة للاستغلال، ووثائق داعمة تهدف إلى مساعدة الباحثين على فهم هذه الفئة من الثغرات وإعادة إنتاجها والتجريب بها.
تم اكتشاف CVE-2025-3052 في الأصل والإفصاح عنه بمسؤولية من قبل فريق أبحاث Binarly. المراجع الرسمية والمجتمعية:
يتضمن هذا المستودع ملفين ثنائيين قابلين للاستغلال، مُقدَّمين بأهداف بحثية وتعليمية مختلفة.
يمثّل هذا الملف الثنائي الثغرة كما كانت موجودة في الواقع.
CVE-2025-3052 هي ثغرة تجاوز Secure Boot تؤثر على أنظمة UEFI، ناتجة عن التعامل غير الآمن مع بيانات مسترجعة من متغير NVRAM داخل تطبيق UEFI موقّع. تتيح الثغرة للمهاجم إفساد بنى البرامج الثابتة الحساسة أمنيًا أثناء عملية الإقلاع، مما يكسر سلسلة الثقة في UEFI فعليًا ويمكّن من تنفيذ تعليمات برمجية غير موقّعة قبل تحميل نظام التشغيل.
ما يجعل هذه الثغرة ذات تأثير بالغ ليس فقط طبيعة العلّة نفسها، وهي بدائية فساد الذاكرة، بل السياق الذي توجد فيه: وحدة UEFI موقّعة بشهادة UEFI الخاصة بطرف ثالث من Microsoft، وموثوقة افتراضيًا على الغالبية العظمى من الأنظمة الحديثة. ونتيجة لذلك، يحدث الاستغلال في واحدة من أبكر وأكثر مراحل التنفيذ امتيازًا في المنصة، قبل ضوابط الأمان على مستوى نظام التشغيل.
Secure Boot هو ميزة أمان أساسية في UEFI مصممة لفرض سلسلة الثقة في المنصة من البرامج الثابتة إلى نظام التشغيل. غرضه الأساسي هو منع مكونات الإقلاع غير المصرّح بها أو الخبيثة، مثل bootkits، من التنفيذ أثناء عملية الإقلاع.
على مستوى عالٍ، يعمل Secure Boot بالتحقق التشفيري من الملفات التنفيذية لـ UEFI قبل السماح بتشغيلها. يُجرى هذا التحقق باستخدام قاعدتي بيانات تحتفظ بهما البرامج الثابتة:
يُسمح لتطبيق UEFI بالتنفيذ إذا تحقق أحد الشرطين:
افتراضيًا، تأتي معظم الأنظمة موثوقة بالشهادات التالية في db:
تم توقيع الوحدات القابلة للاستغلال المرتبطة بـ CVE-2025-3052 باستخدام شهادة Microsoft Corporation UEFI CA 2011. ولأن هذه الشهادة موثوقة على نطاق واسع عبر المصنّعين والمنصات، يمكن لأي تطبيق موقّع بها أن يُنفَّذ على معظم أنظمة UEFI دون تفاعل المستخدم. تضخّم هذه الثقة الواسعة تأثير أي ثغرة داخل مثل هذه الوحدة بشكل كبير، إذ تتجاوز فعليًا ضمانات الحماية المقصودة من Secure Boot.
اكتُشفت وحدة UEFI القابلة للاستغلال في البداية أثناء تحليل واسع النطاق للملفات الثنائية لـ UEFI المرفوعة إلى مستودعات البرمجيات الخبيثة العامة، وأبرزها VirusTotal. وبينما حدث أول إرسال علني للوحدة في نوفمبر 2024، كشف فحص توقيع Authenticode الخاص بها أنها وُقّعت في وقت مبكر يعود إلى أكتوبر 2022، مما يشير إلى أن الملف الثنائي ربما كان متداولًا لفترة طويلة قبل اكتشافه.
كان اسم الملف الأصلي الملاحظ أثناء التحليل هو Dtbios-efi64-71.22.efi. وقد أشار فحص السلاسل المضمّنة وبيانات الشهادة الوصفية وسلوك الملف بقوة إلى أن الوحدة طُوّرت بواسطة DT Research, Inc، وهو مصنّع متخصص في أجهزة الحوسبة المتنقلة المتينة.
كشفت الهندسة العكسية الإضافية أن الوحدة هي أداة لتفليش BIOS، مصممة لقراءة صورة برنامج ثابت من القرص وكتابتها إلى ROM الخاص بالنظام. ورغم أنها كانت مخصصة في الأصل لأجهزة DT Research، فإن الوحدة ليست مقيّدة بمنصة محددة ويمكنها التنفيذ على أي نظام يثق بشهادة UEFI الخاصة بطرف ثالث من Microsoft.
كان من الأدلة الحاسمة أثناء الاستطلاع وجود متغير NVRAM المسمى IhisiParamBuffer. يرتبط هذا المتغير ارتباطًا وثيقًا بتطبيقات البرامج الثابتة القائمة على Insyde، وقد كان متورطًا سابقًا في ثغرات أخرى أفصحت عنها Binarly (مثل BRLY-2022-023 وBRLY-2023-005). وقد أشار وجوده فورًا إلى فئة محتملة من المشكلات المتعلقة بـ NVRAM.
يكمن السبب الجذري لـ CVE-2025-3052 في الاستخدام غير الآمن لبيانات مقروءة من متغير NVRAM دون التحقق منها. وتحديدًا:
ونتيجة لذلك، يكتسب المهاجم القادر على التحكم في متغير IhisiParamBuffer القدرة على التأثير في مكان حدوث عمليات الكتابة هذه في الذاكرة. ورغم أن بدائية الكتابة مقيّدة إلى حد ما، إذ تتيح عادةً كتابة أصفار أو ثوابت صغيرة إلى عنوان عشوائي، فإنها لا تزال قوية بما يكفي لإفساد حالة البرامج الثابتة الحرجة.
في إثبات المفهوم الخاص بـ Binarly، يستهدف الهجوم المتغير العام gSecurity2، الذي يحمل مؤشرًا إلى Security2 Architectural Protocol (للحصول على شرح مفصّل لهذه التقنية الاستغلالية المحددة، راجع المستودع التالي "TheMalwareGuardian: Exploitation Technique SecureBoot Bypass gSecurity2 Corruption"). تُستشار هذه البروتوكول خدمة LoadImage لفرض سياسة Secure Boot، مما يعني أن الكتابة فوق gSecurity2 بمؤشر فارغ تعطّل فحوصات Secure Boot فعليًا أثناء التشغيل. والأهم أن هذا التجاوز شفاف بالنسبة لنظام التشغيل: فبمجرد الإقلاع، يظل Secure Boot يبدو ممكّنًا على مستوى نظام التشغيل رغم تعطيله بالكامل على مستوى البرامج الثابتة.
من الفروق المهمة أنه على المنصات القائمة على Insyde، يكون متغير IhisiParamBuffer عادةً مقفلًا للقراءة فقط، مما يمنع الاستغلال فعليًا على تلك الأنظمة دون ثغرة إضافية. ومن المفارقات أن هذا يعني أن المصنّع الذي قدّمت IBV الخاصة به نمط المتغير القابل للاستغلال في المقام الأول هو من بين الأقل تعرضًا، بينما تظل جميع المنصات الأخرى معرّضة للخطر. وفي الحالات التي يكون فيها المتغير مقفلًا، يمكن ربط تجاوز مثل BRLY-2023-005 للحصول على صلاحية الكتابة إلى المتغير قبل المضي في الاستغلال. أما على الأنظمة التي يكون فيها المتغير قابلًا للكتابة مباشرةً، فإن الهجوم مباشر وموثوق للغاية.
يصف ما يلي الهجوم من البداية إلى النهاية باستغلال CVE-2025-3052، بافتراض مهاجم ذي امتيازات ولديه وصول على مستوى نظام التشغيل:
حدّدت Microsoft أن 14 وحدة UEFI مختلفة كانت متأثرة، وعالجت المشكلة بإضافة تجزئاتها إلى Secure Boot dbx.
| Module Name | Authenticode SHA-256 Hash |
|---|---|
| BiosFlashShell-efi64-80.02.efi | C54A4060B3A76FA045B7B60EEAEBC8389780376BA3EF1F63D417BA1B5528E95 |
| BiosFlashShell-efi64-81.02.efi | CBFAA286144EB2D165A6B17245BAD4F73058436C7292BE56DC6EBA29A369ADDF |
| Dtbios-efi64-70.17.efi | 9D7E7174C281C6526B44C632BAA8C3320ADDD0C77DC90778CC14893882D74618 |
| Dtbios-efi64-70.18.efi | 9B1F35052CFC5FB06DABE5E8F7B747F081DA28D722DB59ADE253B9E38A7A3C76 |
| Dtbios-efi64-70.19.efi | E3CE55E584371D3F2FBCA2241EF0711FF80876EBF71BAB07D8ECEE645A40DCFC |
| Dtbios-efi64-70.20.efi | EE093913ABBD34CB8B5EA31375179A8B55A298353C03AFE5055AA4E8E3F705EF |
| Dtbios-efi64-70.21.efi | B4E1880425F7857B741B921D04FD9276130927CF90A427C454B970E7A2F442F9 |
| Dtbios-efi64-70.22.efi | CDA0B4A59390B36E1B654850428CBB5B4C7B5E4349E87ACDE97FB543736FF1D4 |
| Dtbios-efi64-71.17.efi | C87EFD057497F90321D62A69B311912B8EF8A045FE9C5E6BD5C8C1A4E6F39629 |
| Dtbios-efi64-71.18.efi | 9E19DD645235341A555D6AC0665591453AE13918ECD37DF22DFBEE91EAA9A2DA |
| Dtbios-efi64-71.19.efi | 63F67824FDA998798964FF33B87441857DA92F3A8EE3E04166EEC3156E4E6B82 |
| Dtbios-efi64-71.20.efi | 0BC4F078388D41AB039F87AE84CF8D39302CCBDD70C4ADEE02263EBF6A2DD328 |
| Dtbios-efi64-71.21.efi | E2AEC271B9596A461EB6D54DB81785E4E4C615CFDA5F4504BCC0A329248A4D36 |
| Dtbios-efi64-71.22.efi | 6B4328EBCBE46ED9118FF2D4472DE329D70BA83016DF7A6F50F8AF92342160A1 |
هل تعمل على شيء مشابه؟ هل تبحث في UEFI أو أمان النواة أو الاستغلال أو موضوع أمني آخر مثير للاهتمام؟ إذا كنت بحاجة إلى مساعدة في تطوير استغلال، أو استكشاف تقنية، أو مجرد تبادل الأفكار، فلا تتردد في التواصل. أنا دائمًا منفتح لمناقشة الأبحاث، والمساعدة حيث أستطيع، والتعاون في المشاريع المثيرة للاهتمام. لا تتردد في التواصل معي على LinkedIn.