أزمة شهادة Secure Boot لأجهزة Huawei MateBook: دليل النجاة من انتهاء صلاحية UEFI CA 2026
التاريخ: 30 مايو 2026
المنصة: HUAWEI BoF-XX (MateBook M1010)، Intel Core i7-1260P الجيل الثاني عشر، Ubuntu Resolute Raccoon (Noble)، GNOME 50.0
الحالة: Platform is in Setup Mode، SecureBoot معطل، متغير db مفقود
ملخص
في 27 يونيو 2026، ستنتهي صلاحية الشهادة الجذرية Microsoft UEFI CA 2011. بالنسبة لمعظم مستخدمي Windows، هذه مجرد تحديثات خلفية. أما لمستخدمي Linux الذين يستخدمون أجهزة OEM غير مدعومة — وبالأخص هواوي MateBook غير المدرجة في Linux Vendor Firmware Service (LVFS) والقائمة البيضاء لمايكروسوفت — فهذه قنبلة موقوتة. تسجل هذه المقالة المشهد التقني الكامل للأزمة، وتفكك خرافة “Linux لا يحتاج توقيع مايكروسوفت”، وتقدم مسار إصلاح مثبت ميدانياً في بيئة Linux خالصة — مناسب للأجهزة العالقة في Setup Mode وبدون قنوات دعم رسمية من الشركة المصنعة.
1. تشريح انتهاء الصلاحية
1.1 ما الذي سيموت فعلاً
تعتمد سلسلة الثقة في Secure Boot على ثلاث شهادات أصدرتها مايكروسوفت في 2011:
| الشهادة | الدور | تاريخ الانتهاء |
|---|---|---|
Microsoft Corporation KEK CA 2011 | مفتاح تبادل المفاتيح (KEK) — يوقع تحديثات db/dbx | يونيو 2026 |
Microsoft UEFI CA 2011 | يتحقق من محمل الإقلاع التابع لجهات خارجية، برامج التشغيل، Linux shim | يونيو 2026 |
Microsoft Windows Production PCA 2011 | يوقع Windows Boot Manager | أكتوبر 2026 |
هذه الشهادات ليست على القرص. إنها موجودة في متغيرات NVRAM للبرامج الثابتة للوحة الأم (db، KEK، PK، dbx). بعد انتهاء الصلاحية، سترفض البرامج الثابتة التي تتحقق بدقة من صلاحية X.509 تحميل أي محمل إقلاع موقّع فقط بشهادات 2011 CA — بما في ذلك إصدارات Linux shim المستقبلية و NVIDIA GPU Option ROM وإصدارات Windows Boot Manager المحدثة.
1.2 سلسلة الثقة (قبل 2026)
graph TD
A[مفتاح المنصة / PK<br/>OEM أو مايكروسوفت] -->|يوقع| B[مفتاح تبادل المفاتيح / KEK<br/>Microsoft KEK CA 2011]
B -->|يوقع| C[قاعدة التواقيع / db<br/>Microsoft UEFI CA 2011]
C -->|يتحقق| D[shim.efi<br/>محمل إقلاع Linux]
C -->|يتحقق| E[Windows Boot Manager]
C -->|يتحقق| F[NVIDIA GOP / Option ROM]
D -->|يتحقق| G[GRUB2]
G -->|يتحقق| H[نواة Linux]
style C fill:#ff9999,stroke:#cc0000,stroke-width:3px
style B fill:#ff9999,stroke:#cc0000,stroke-width:3px
الشكل 1: الشهادات القديمة (بالأحمر) تدعم سلسلة الإقلاع الكاملة للجهات الخارجية. بعد انتهاء الصلاحية ستفقد جميع المكونات التابعة التحقق.
1.3 سلسلة الثقة (بعد 2026، الوضع المثالي)
graph TD
A[مفتاح المنصة / PK] -->|يوقع| B[مفتاح تبادل المفاتيح / KEK<br/>Microsoft KEK 2K CA 2023]
B -->|يوقع| C[قاعدة التواقيع / db<br/>Microsoft UEFI CA 2023]
B -->|يوقع| D[قاعدة التواقيع / db<br/>Windows UEFI CA 2023]
C -->|يتحقق| E[shim.efi<br/>نسخة موقعة 2023]
D -->|يتحقق| F[Windows Boot Manager<br/>نسخة موقعة 2023]
C -->|يتحقق| G[NVIDIA GOP<br/>نسخة موقعة 2023]
E -->|يتحقق| H[GRUB2]
H -->|يتحقق| I[نواة Linux]
style C fill:#99ff99,stroke:#009900,stroke-width:3px
style D fill:#99ff99,stroke:#009900,stroke-width:3px
style B fill:#99ff99,stroke:#009900,stroke-width:3px
الشكل 2: شهادات 2023 الجديدة (بالأخضر) يجب أن تكون موجودة في db قبل يونيو 2026 للحفاظ على التوافق المستقبلي.
2. فخ هواوي: التخلي عن نظام التحديثات
2.1 مشكلة القائمة البيضاء لـ OEM
تحتفظ هواوي بقائمة بيضاء صارمة ومحدودة من SKU، وهذه الطرازات فقط يمكنها إتمام تدوير الشهادات عبر Windows Update. وفقاً لوثائق الدعم الرسمية لهواوي، هناك 19 SKU محددة فقط مضمونة لاستلام شهادات 2023 عبر Windows Update:
- MateBook X Pro 2024 / 2022
- MateBook 14 2023 (غير S)
- MateBook D16 2024
- MateStation S (دفعات محددة)
- …… (15 طرازاً آخر)
الجهاز الرئيسي الموثق في هذه المقالة MateBook 14 2022 (BoF-XX / M1010) غير مدرج بوضوح في القائمة. هذا يعني أنه حتى مع تثبيت Windows 11، فمن المرجح جداً ألا يتم تشغيل مهمة Secure-Boot-Update المجدولة، أو أن البرامج الثابتة سترفض كتابة المتغيرات.
2.2 غياب LVFS
graph LR
subgraph بيئة تحديث البرامج الثابتة
A[Windows Update] -->|يدفع الشهادات| B[البرامج الثابتة لـ OEM<br/>Dell, Lenovo, HP]
C[LVFS / fwupd] -->|يدفع .cab| D[Linux Vendor Firmware Service]
D -->|يدعم| E[Dell XPS]
D -->|يدعم| F[Lenovo ThinkPad]
D -->|يدعم| G[System76]
D -->|يدعم| H[Framework]
D -.->|مفقود| I[HUAWEI MateBook]
end
style I fill:#ff9999,stroke:#cc0000,stroke-width:3px
الشكل 3: هواوي لا تصدر تحديثات البرامج الثابتة إلى LVFS. لا يمكن لمستخدمي Linux الحصول على تحديثات BIOS أو الشهادات الرسمية عبر fwupdmgr.
2.3 مغالطة “Fedora حدثت الشهادات تلقائياً نيابة عني”
هناك اعتراض شائع في نقاشات المجتمع — “Fedora دفعت تحديث البرامج الثابتة تلقائياً، Linux لا يحتاج توقيع مايكروسوفت أصلاً”.
هذا انحياز الناجين. fwupd في Fedora يعمل لأن:
- الشركة المصنعة للعتاد (مثل Lenovo) رفعت تحديث capsule يحتوي على الشهادات الجديدة إلى LVFS.
- البرامج الثابتة لتلك الشركة تسمح بكتابة المتغيرات من جانب نظام التشغيل (ليس الكل يسمح — HP و富士通 معروفتان بقفل كتابة
db). - طراز الجهاز ضمن مصفوفة دعم الشركة المصنعة.
لمستخدمي هواوي MateBook، جميع الشروط السابقة غير متوفرة. الشهادات موجودة في NVRAM للبرامج الثابتة، وليس في /boot/efi. لا يوجد توزيعة Linux قادرة على “حقن” شهادات بطريقة سحرية لم يأذن بها OEM وترفضها البرامج الثابتة.
3. منقذ Setup Mode
3.1 اكتشاف الحالة الذهبية
على جهاز هواوي MateBook M1010 للمؤلف، تم تنفيذ أوامر التشخيص التالية:
$ sudo mokutil --sb-stateSecureBoot disabledPlatform is in Setup Mode
$ ls /sys/firmware/efi/efivars/ | grep -i dbdbDefault-8be4df61-93ca-11d2-aa0d-00e098032b8cdbx-d719b2cb-3d3a-4596-a3bc-dad00e67656fdbxDefault-8be4df61-93ca-11d2-aa0d-00e098032b8cالاكتشافات الرئيسية:
SecureBoot disabled: سلسلة الإقلاع غير موثقة حالياً.Platform is in Setup Mode: متغيرPK(مفتاح المنصة) فارغ.- متغير
dbمفقود: قاعدة التواقيع غير موجودة في NVRAM — فقط القيمة الافتراضيةdbDefaultلا تزال موجودة.
3.2 لماذا Setup Mode هو قدرة خارقة
في User Mode (التشغيل العادي)، الكتابة إلى db تتطلب ملفات .auth موقعة. التوقيع يجب أن يتم التحقق منه بواسطة KEK الموجود — والمفتاح الخاص لـ KEK تحتكره مايكروسوفت حصرياً. المستخدم العادي لا يمكنه توليد توقيع صالح.
في Setup Mode (PK فارغ)، البرامج الثابتة لا تفرض التحقق من التوقيع على كتابة المتغيرات. هذا يعني أنه يمكن كتابة ملفات .esl (قائمة تواقيع EFI) غير موقعة مباشرة إلى db و KEK و PK.
stateDiagram-v2
[*] --> SetupMode: استعادة المصنع / مسح PK
[*] --> UserMode: إقلاع عادي، PK مسجل
SetupMode --> UserMode: كتابة PK.auth (توقيع ذاتي)
UserMode --> SetupMode: حذف PK / استعادة مفاتيح المصنع
state SetupMode {
[*] --> db_write_unsigned
db_write_unsigned --> [*]: efi-updatevar -f file.esl db
note right of db_write_unsigned
لا حاجة لتوقيع.
لا حاجة لمفتاح KEK خاص.
كتابة مباشرة إلى NVRAM.
end note
}
state UserMode {
[*] --> db_write_signed
db_write_signed --> [*]: efi-updatevar -f file.auth db
note right of db_write_signed
يحتاج ملف .auth موقّع من KEK.
المفتاح الخاص لـ KEK تملكه مايكروسوفت فقط.
المستخدم العادي ممنوع.
end note
}
style SetupMode fill:#99ff99,stroke:#009900
style UserMode fill:#ffcccc,stroke:#cc0000
الشكل 4: آلة حالة الوصول لمتغيرات UEFI Secure Boot. Setup Mode (بالأخضر) هي الحالة الوحيدة التي يمكن للمستخدم العادي فيها كتابة الشهادات دون الحاجة للمفتاح الخاص لمايكروسوفت.
4. نمذجة المخاطر: لماذا “Linux لا يحتاج توقيع” غير صحيح
4.1 مسرح التهديدات
لنفترض أن (R) هو إجمالي مخاطر وقت التشغيل، مقسمة كالتالي:
[ R = R_{bootkit} + R_{compat} + R_{maint} ]
حيث:
- (R_{bootkit}): احتمال الإصابة ببرمجيات خبيثة على مستوى البرامج الثابتة (مثل BlackLotus، CosmicStrand)
- (R_{compat}): احتمال فشل تحديثات النظام المستقبلية بسبب فشل التحقق من التوقيع
- (R_{maint}): تكلفة الصيانة اليدوية لسلسلة إقلاع غير قياسية
عند إيقاف تشغيل Secure Boot وانتهاء صلاحية شهادات 2011:
[ R_{bootkit}^{(post)} = R_{bootkit}^{(pre)} \times \delta^{-1}, \quad \delta \in (0,1) ]
عدم تحديث dbx (قائمة الإبطال) يعني أن إصدارات bootloader و shim المعروفة بثغراتها لا يمكن إدراجها في القائمة السوداء بواسطة البرامج الثابتة. جهاز المناعة للنظام يتجمد إلى الأبد.
4.2 مصفوفة مخاطر التوافق
| السيناريو | شهادات 2011 فقط | شهادات 2023 مسجلة | SecureBoot معطل |
|---|---|---|---|
| إقلاع Linux الحالي | ✅ | ✅ | ✅ |
| تحديث shim مستقبلي (موقّع 2023) | ❌ | ✅ | ✅ |
| تعريف NVIDIA جديد (GOP موقّع 2023) | ❌ | ✅ | غير متاح |
| إقلاع مزدوج مع Windows (تثبيت مستقبلي) | ❌ | ✅ | ✅ |
تحديث قائمة الإبطال dbx | ❌ | ✅ | غير متاح |
| القدرة على الدفاع ضد bootkit | منخفضة | عالية | معدومة |
الجدول 1: مصفوفة التوافق والأمان. عمود “شهادات 2011 فقط” يمثل حالة التقاعد بعد يونيو 2026.
5. الإصلاح في بيئة Linux خالصة: خطوات عملية
5.1 المتطلبات المسبقة
- صلاحيات الجذر (root) على نظام Linux المستهدف
- تثبيت الحزم:
efitools،openssl،uuid-runtime - اتصال بالإنترنت لتنزيل شهادات 2023 من مايكروسوفت
- نسخة احتياطية من متغيرات NVRAM الحالية (إن وجدت)
5.2 المرحلة الأولى: الحصول على الشهادات
# إنشاء دليل العملmkdir -p ~/secureboot && cd ~/secureboot
# تنزيل Microsoft UEFI CA 2023 (صيغة DER)wget -O MicUEFICA2023.der \ "https://go.microsoft.com/fwlink/?linkid=2239872"
# تنزيل Windows UEFI CA 2023 (صيغة DER)wget -O WinUEFICA2023.der \ "https://go.microsoft.com/fwlink/?linkid=2239776"
# التحويل إلى صيغة PEM لمعالجة efitoolsopenssl x509 -in MicUEFICA2023.der -inform DER \ -out MicUEFICA2023.pem -outform PEM
openssl x509 -in WinUEFICA2023.der -inform DER \ -out WinUEFICA2023.pem -outform PEM5.3 المرحلة الثانية: توليد قوائم تواقيع EFI
# توليد GUID عشوائي لملكية قائمة التواقيعuuidgen --random > guid.txtGUID=$(cat guid.txt)
# تحويل الشهادات إلى ESL (قائمة تواقيع EFI)cert-to-efi-sig-list -g "$GUID" \ MicUEFICA2023.pem MicUEFICA2023.esl
cert-to-efi-sig-list -g "$GUID" \ WinUEFICA2023.pem WinUEFICA2023.esl5.4 المرحلة الثالثة: الحقن في NVRAM (Setup Mode)
بما أن المنصة في وضع Setup Mode، يتم الكتابة مباشرة باستخدام ملفات .esl غير موقعة. لا حاجة لتوقيع .auth.
# إنشاء متغير db لأول مرة (بدون علامة -a)sudo efi-updatevar -f MicUEFICA2023.esl db
# إلحاق الشهادة الثانية (بعلامة -a)sudo efi-updatevar -a -f WinUEFICA2023.esl dbالتحقق:
sudo mokutil --dbالمخرجات المتوقعة:
[...]Certificate: Data: Version: 3 (0x2) Serial Number: 33:00:00:02:5a:76:fb:8f:76:14:44:3b:91:00:00:00:02:5a:76 Signature Algorithm: sha384WithRSAEncryption Issuer: C = US, O = Microsoft Corporation, CN = Microsoft UEFI CA 2023[...]5.5 المرحلة الرابعة: الخروج من Setup Mode (موصى به لكن غير إجباري)
ترك النظام في Setup Mode خطر — أي نظام تشغيل أو bootloader خبيث يمكنه تعديل db. سنقوم بتوليد مفتاح منصة شخصي (PK) للتبديل إلى User Mode، مع الإبقاء على Secure Boot معطلاً.
# توليد مفتاح منصة بتوقيع ذاتيopenssl req -new -x509 -newkey rsa:2048 \ -subj "/CN=Personal MateBook PK/" \ -keyout PK.key -out PK.pem \ -days 3650 -nodes
# التحويل إلى DER لمعالجة ESLopenssl x509 -in PK.pem -out PK.der -outform DER
# توليد ESLcert-to-efi-sig-list -g "$GUID" PK.der PK.esl
# كتابة PK للخروج من Setup Modesudo efi-updatevar -f PK.esl PK
# التحقق من تغيير الحالةsudo mokutil --sb-state# متوقع: "SecureBoot disabled" + "Platform is in User Mode"5.6 مخطط التدفق الكامل
flowchart TD
A[البداية: هواوي MateBook<br/>بيئة Linux خالصة] --> B{فحص الحالة}
B -->|mokutil --sb-state| C[في وضع Setup Mode؟<br/>PK فارغ؟]
C -->|نعم| D[تنزيل شهادات<br/>مايكروسوفت 2023]
C -->|لا| E[ادخل BIOS ← امسح PK<br/>← أعد التشغيل إلى Linux]
D --> F[تحويل DER → PEM → ESL]
F --> G[efi-updatevar -f cert.esl db]
G --> H{تحقق<br/>mokutil --db}
H -->|شهادة 2023 موجودة| I[توليد PK شخصي]
H -->|مفقودة| J[تصحيح الأخطاء: فحص dmesg<br/>صلاحيات efivarfs]
I --> K[efi-updatevar -f PK.esl PK]
K --> L[الخروج من Setup Mode<br/>الدخول إلى User Mode]
L --> M[جاهز للمستقبل:<br/>شهادة 2023 في db<br/>SecureBoot لا يزال معطلاً]
style C fill:#99ff99,stroke:#009900
style H fill:#ffcc66,stroke:#cc9900
style M fill:#99ff99,stroke:#009900
الشكل 5: مسار قرار الإصلاح في بيئة Linux خالصة عبر Setup Mode لأجهزة هواوي MateBook.
6. الحالات الحدية وأنماط الأعطال
6.1 إذا أعاد efi-updatevar خطأ Permission denied
بعض الشركات المصنعة (HP، 富士通، وربما إصدارات مستقبلية من برامج هواوي الثابتة) تقفل كتابة NVRAM على مستوى البرامج الثابتة حتى في Setup Mode. إذا واجهت:
Error: Could not update variable: Permission deniedالبديل: استخدم KeyTool.efi (من حزمة efitools)، وشغّله مباشرة من EFI shell أو قائمة الإقلاع. يوفر واجهة رسومية لتسجيل الشهادات يمكنها تجاوز قيود استدعاءات النظام على مستوى نظام التشغيل.
6.2 إذا كان متغير db موجوداً بالفعل
إذا أظهر الأمر ls /sys/firmware/efi/efivars/ وجود ملف db-8be4df61-93ca-11d2-aa0d-00e098032b8c (GUID المتغير العمومي المعياري لـ EFI)، استخدم علامة الإلحاق مع جميع عمليات الكتابة:
sudo efi-updatevar -a -f MicUEFICA2023.esl dbsudo efi-updatevar -a -f WinUEFICA2023.esl db6.3 خطر شاشة NVIDIA السوداء
بعض بطاقات NVIDIA القديمة (سلسلة GTX 600/700/900 وسلسلة 10 المبكرة) تحتوي على مشغل UEFI GOP موقّع فقط بواسطة Microsoft UEFI CA 2011. إذا قمت بتفعيل Secure Boot بعد يونيو 2026 دون تسجيل 2023 CA، فقد تفشل هذه البطاقات في تهيئة الشاشة، مما يؤدي إلى شاشة سوداء قبل أن يتمكن نظام التشغيل من تولي المسؤولية.
الإجراء المخفف: حل هذه المقالة يسجل شهادات 2023 مع الإبقاء على Secure Boot معطلاً. هذا يحافظ على التوافق المستقبلي دون تفعيل التحقق من GPU Option ROM عند الإقلاع.
7. الخلاصة
انتهاء صلاحية شهادات UEFI في 2026 ليس مشكلة Windows — إنه مشكلة مرساة الثقة في طبقة البرامج الثابتة. لمستخدمي هواوي MateBook الذين يشغلون Linux فقط، عدم دعم LVFS مضافاً إليه الاستبعاد من القائمة البيضاء لمايكروسوفت يخلق حافة صيانة حقيقية.
لكن اكتشاف أن الجهاز عالق في Setup Mode يحول سيناريو القفل المستحيل ظاهرياً إلى مشكلة حقن مباشر في NVRAM. شهادات 2023 يمكن تسجيلها أصلاً في بيئة Linux خالصة، دون استخدام Windows، دون الحاجة لمفتاح مايكروسوفت الخاص، ودون fwupd، باستخدام efitools مباشرة.
“Linux لا يحتاج توقيع مايكروسوفت” صحيح تقنياً لإقلاع اليوم، لكنه خطأ كارثي لصيانة الغد. سجل شهادات 2023 الآن — إنها بوليصة تأمين لتحديثات shim المستقبلية، البرامج الثابتة لـ GPU، وسيناريوهات الإقلاع المزدوج التي ستفشل بصمت مع مرساة 2011 فقط.
الملحق أ: أوامر مرجعية سريعة
# فحص الحالة الحاليةsudo mokutil --sb-statesudo mokutil --db | grep -i "2023"ls /sys/firmware/efi/efivars/ | grep -i db
# تنزيل وتحويلwget https://go.microsoft.com/fwlink/?linkid=2239872 -O MicUEFICA2023.derwget https://go.microsoft.com/fwlink/?linkid=2239776 -O WinUEFICA2023.deropenssl x509 -in MicUEFICA2023.der -inform DER -out MicUEFICA2023.pem -outform PEMopenssl x509 -in WinUEFICA2023.der -inform DER -out WinUEFICA2023.pem -outform PEM
# توليد وكتابةuuidgen --random > guid.txtcert-to-efi-sig-list -g "$(cat guid.txt)" MicUEFICA2023.pem MicUEFICA2023.eslcert-to-efi-sig-list -g "$(cat guid.txt)" WinUEFICA2023.pem WinUEFICA2023.eslsudo efi-updatevar -f MicUEFICA2023.esl dbsudo efi-updatevar -a -f WinUEFICA2023.esl dbالملحق ب: قاموس المصطلحات
| المصطلح | التعريف |
|---|---|
| PK | Platform Key (مفتاح المنصة) — جذر الثقة لتحديثات متغيرات Secure Boot |
| KEK | Key Exchange Key (مفتاح تبادل المفاتيح) — يوقع تحديثات db و dbx |
| db | Signature Database (قاعدة التواقيع) — القائمة البيضاء لمحملات الإقلاع/برامج التشغيل المسموح بها |
| dbx | Forbidden Signature Database (قاعدة التواقيع المحظورة) — القائمة السوداء للتواقيع الملغاة |
| Setup Mode | PK فارغ، البرامج الثابتة لا تفرض التحقق من التوقيع على كتابة المتغيرات |
| User Mode | PK مسجل، جميع تحديثات المتغيرات يجب أن تمر عبر توقيع تشفيري |
| shim | محمل إقلاع Linux من المستوى الأول، موقّع بواسطة Microsoft UEFI CA |
| LVFS | Linux Vendor Firmware Service — خدمة توزيع البرامج الثابتة المركزية لنظام Linux |
إصدار المستند: 1.0.0
المنصة المختبرة: HUAWEI BoF-XX (M1010)، Ubuntu Resolute Raccoon، kernel 7.0.0-12-generic