needhelp
← Back to blog

أزمة شهادة Secure Boot لأجهزة Huawei MateBook: دليل النجاة من انتهاء صلاحية UEFI CA 2026

by needhelp
UEFI
Secure Boot
Linux
هواوي
MateBook
انتهاء صلاحية الشهادة

التاريخ: 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 يعمل لأن:

  1. الشركة المصنعة للعتاد (مثل Lenovo) رفعت تحديث capsule يحتوي على الشهادات الجديدة إلى LVFS.
  2. البرامج الثابتة لتلك الشركة تسمح بكتابة المتغيرات من جانب نظام التشغيل (ليس الكل يسمح — HP و富士通 معروفتان بقفل كتابة db).
  3. طراز الجهاز ضمن مصفوفة دعم الشركة المصنعة.

لمستخدمي هواوي MateBook، جميع الشروط السابقة غير متوفرة. الشهادات موجودة في NVRAM للبرامج الثابتة، وليس في /boot/efi. لا يوجد توزيعة Linux قادرة على “حقن” شهادات بطريقة سحرية لم يأذن بها OEM وترفضها البرامج الثابتة.


3. منقذ Setup Mode

3.1 اكتشاف الحالة الذهبية

على جهاز هواوي MateBook M1010 للمؤلف، تم تنفيذ أوامر التشخيص التالية:

Terminal window
$ sudo mokutil --sb-state
SecureBoot disabled
Platform is in Setup Mode
$ ls /sys/firmware/efi/efivars/ | grep -i db
dbDefault-8be4df61-93ca-11d2-aa0d-00e098032b8c
dbx-d719b2cb-3d3a-4596-a3bc-dad00e67656f
dbxDefault-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 المرحلة الأولى: الحصول على الشهادات

Terminal window
# إنشاء دليل العمل
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 لمعالجة efitools
openssl x509 -in MicUEFICA2023.der -inform DER \
-out MicUEFICA2023.pem -outform PEM
openssl x509 -in WinUEFICA2023.der -inform DER \
-out WinUEFICA2023.pem -outform PEM

5.3 المرحلة الثانية: توليد قوائم تواقيع EFI

Terminal window
# توليد GUID عشوائي لملكية قائمة التواقيع
uuidgen --random > guid.txt
GUID=$(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.esl

5.4 المرحلة الثالثة: الحقن في NVRAM (Setup Mode)

بما أن المنصة في وضع Setup Mode، يتم الكتابة مباشرة باستخدام ملفات .esl غير موقعة. لا حاجة لتوقيع .auth.

Terminal window
# إنشاء متغير db لأول مرة (بدون علامة -a)
sudo efi-updatevar -f MicUEFICA2023.esl db
# إلحاق الشهادة الثانية (بعلامة -a)
sudo efi-updatevar -a -f WinUEFICA2023.esl db

التحقق:

Terminal window
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 معطلاً.

Terminal window
# توليد مفتاح منصة بتوقيع ذاتي
openssl req -new -x509 -newkey rsa:2048 \
-subj "/CN=Personal MateBook PK/" \
-keyout PK.key -out PK.pem \
-days 3650 -nodes
# التحويل إلى DER لمعالجة ESL
openssl x509 -in PK.pem -out PK.der -outform DER
# توليد ESL
cert-to-efi-sig-list -g "$GUID" PK.der PK.esl
# كتابة PK للخروج من Setup Mode
sudo 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)، استخدم علامة الإلحاق مع جميع عمليات الكتابة:

Terminal window
sudo efi-updatevar -a -f MicUEFICA2023.esl db
sudo efi-updatevar -a -f WinUEFICA2023.esl db

6.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 فقط.


الملحق أ: أوامر مرجعية سريعة

Terminal window
# فحص الحالة الحالية
sudo mokutil --sb-state
sudo mokutil --db | grep -i "2023"
ls /sys/firmware/efi/efivars/ | grep -i db
# تنزيل وتحويل
wget https://go.microsoft.com/fwlink/?linkid=2239872 -O MicUEFICA2023.der
wget https://go.microsoft.com/fwlink/?linkid=2239776 -O WinUEFICA2023.der
openssl x509 -in MicUEFICA2023.der -inform DER -out MicUEFICA2023.pem -outform PEM
openssl x509 -in WinUEFICA2023.der -inform DER -out WinUEFICA2023.pem -outform PEM
# توليد وكتابة
uuidgen --random > guid.txt
cert-to-efi-sig-list -g "$(cat guid.txt)" MicUEFICA2023.pem MicUEFICA2023.esl
cert-to-efi-sig-list -g "$(cat guid.txt)" WinUEFICA2023.pem WinUEFICA2023.esl
sudo efi-updatevar -f MicUEFICA2023.esl db
sudo efi-updatevar -a -f WinUEFICA2023.esl db

الملحق ب: قاموس المصطلحات

المصطلحالتعريف
PKPlatform Key (مفتاح المنصة) — جذر الثقة لتحديثات متغيرات Secure Boot
KEKKey Exchange Key (مفتاح تبادل المفاتيح) — يوقع تحديثات db و dbx
dbSignature Database (قاعدة التواقيع) — القائمة البيضاء لمحملات الإقلاع/برامج التشغيل المسموح بها
dbxForbidden Signature Database (قاعدة التواقيع المحظورة) — القائمة السوداء للتواقيع الملغاة
Setup ModePK فارغ، البرامج الثابتة لا تفرض التحقق من التوقيع على كتابة المتغيرات
User ModePK مسجل، جميع تحديثات المتغيرات يجب أن تمر عبر توقيع تشفيري
shimمحمل إقلاع Linux من المستوى الأول، موقّع بواسطة Microsoft UEFI CA
LVFSLinux Vendor Firmware Service — خدمة توزيع البرامج الثابتة المركزية لنظام Linux

إصدار المستند: 1.0.0
المنصة المختبرة: HUAWEI BoF-XX (M1010)، Ubuntu Resolute Raccoon، kernel 7.0.0-12-generic

Share this page