- التوقيع الرقمي لوحدات التحكم في ويندوز يضمن النزاهة والمنشأ الموثوق ويحمي من السائقين ضار.
- تختلف متطلبات التوقيع وفقًا لإصدار Windows واستخدام التمهيد الآمن ونوع برنامج التشغيل (النواة، المستخدم، ELAM، الوسائط المتعددة المحمية).
- تتيح لك أدوات مثل SignTool وHLK/HCK وMakeCab وتوقيع الشهادة إنشاء برامج التشغيل وتوقيعها والتحقق من صحتها بشكل احترافي.
- يؤدي تعطيل توقيع برنامج التشغيل إلى زيادة خطر الإصابة ببرامج rootkits ويجب القيام بذلك بطريقة خاضعة للرقابة فقط، مع إعطاء الأولوية دائمًا لبرامج التشغيل والمثبتات الموثوقة.

في نظام التشغيل Windows، وحدات التحكم وتوقيعاتها الرقمية أصبحت هذه البرمجيات جزءًا أساسيًا من أمن النظام. فإلى جانب تمكين الطابعة أو بطاقة الرسومات أو البطاقة الذكية من العمل، أصبح من المهم اليوم أن يتمكن النظام من التحقق من أن البرنامج أصلي وسليم ومن مصدر موثوق.
إذا سبق لك أن صادفت رسائل مثل "لا يمكن لنظام Windows التحقق من ناشر برنامج التشغيل هذا" أو أخطاء متعلقة بالشهادات عند تثبيت برنامج تشغيل - أنت تعلم مدى إحباط ذلك. في هذه المقالة، سنشرح بالتفصيل كيفية عمل توقيع برنامج التشغيل في Windows (سواءً في وضع النواة أو المستخدم)، وما هي المتطلبات التي تتغير وفقًا لإصدار Windows، وكيفية توقيع برامج التشغيل الخاصة بك، والخيارات المتاحة لك لتعطيل التحقق من التوقيع بأمان عندما لا يكون لديك خيار آخر.
ما هو توقيع برنامج التشغيل في Windows ولماذا هو مهم جدًا؟
الدعوة توقيع السائق يتضمن هذا ببساطة ربط توقيع رقمي (بناءً على شهادات) بحزمة برنامج تشغيل. يُطبّق هذا التوقيع عادةً على ملف كتالوج الحزمة (.CAT) أو مباشرةً على ملفات برنامج التشغيل الثنائية (.SYS، .DLL، إلخ) باستخدام تقنيات التوقيع المُضمّن.
أثناء تثبيت الجهاز، يستخدم Windows هذه التوقيعات الرقمية لأمرين رئيسيينيتحقق النظام من عدم تعديل الحزمة منذ توقيعها (سلامتها)، ويؤكد هوية مُورِّد البرنامج (ناشر برنامج التشغيل). في حال وجود أي خطأ، يُعرض تحذير، أو في الحالات الأكثر صرامة، يُحظر تثبيت برنامج التشغيل أو تحميله.
في الإصدارات 64 بت من نظام التشغيل Windows Vista والإصدارات الأحدث، قدمت Microsoft سياسة واضحة إلى حد ما: يجب توقيع جميع برامج تشغيل وضع kernel القدرة على التحميل، مع استثناءات قليلة جدًا. هذا يضع برامج التشغيل في نفس فئة الأمان مع بقية ملفات النظام الثنائية، لأن أي عطل على مستوى النواة قد يُعرّض النظام للخطر تمامًا.
أصبحت القواعد أكثر صرامة مع تيمبوبدءًا من إصدار Windows 10 رقم 1507، سيتم توقيع جميع برامج التشغيل من خلال مركز تطوير خردوات مايكروسوفت التوقيع باستخدام SHA-2 إلزامي. أصبح SHA-1 القديم قديمًا لأسباب أمنية تشفيرية، وتعمل مايكروسوفت على إزالته تدريجيًا من النظام البيئي بأكمله.
هناك تفصيل مهم: قد تواجه ملفات ثنائية لبرنامج التشغيل في وضع kernel الموقعة بشهادات مزدوجة (SHA-1 + SHA-2) الصادرة عن كيانات غير تابعة لشركة Microsoft مشكلات في الأنظمة السابقة لنظام التشغيل Windows 10...أو حتى التسبب في أعطال في نظام Windows 10 والإصدارات الأحدث. لمنع ذلك، أصدرت Microsoft التحديث KB3081436، الذي يتضمن تجزئات الملفات الصحيحة ويصحح سلوك التحميل في هذه الحالات.
نظرة عامة على تسجيل الدخول لبرنامج التشغيل في Windows
لفهم آلية عمل كل هذا بشكل كامل، من المفيد فصل المفاهيم. من ناحية، هناك توقيع رمز السائق (وضع النواة أو وضع المستخدم)، ومن ناحية أخرى، متطلبات التوقيع لتثبيت أجهزة التوصيل والتشغيل (PnP). على الرغم من أنهما مرتبطان، إلا أنهما ليسا متطابقين تمامًا: قد يكون لديك برنامج تشغيل مُوقّع بشكل صحيح على المستوى الثنائي، ولكنه لا يلبي متطلبات تثبيت إضافية.
لدى Microsoft وثائق محددة حول التوقيعات الرقمية لوحدات النواة في أنظمة Windows Vista والأنظمة الأحدثيوضح هذا المستند الشهادات الصالحة، وكيفية بناء سلاسل الثقة، وخوارزميات التجزئة المدعومة (حاليًا SHA-2). بالنسبة لبرامج التشغيل التي تنقل محتوى محميًا (صوت وفيديو مع DRM، وPUMA، وPAP، وPVP-OPM، إلخ)، توجد أيضًا متطلبات خاصة لتوقيع التعليمات البرمجية تُركز على حماية محتوى الوسائط المتعددة.
فيما يتعلق بتدفق النشر، هناك اليوم عدة طرق لـ إرسال برامج التشغيل إلى بوابة أجهزة Microsoftبالنسبة لبرامج تشغيل الإنتاج، النهج المُتبع هو إجراء الاختبارات باستخدام HLK أو إصدار HCK الأقدم، وتحميل كلٍّ من الملف الثنائي وسجلات الاختبار. في سيناريوهات العميل فقط على نظام Windows 10، يُمكن استخدام توقيع الإثبات، مما يُقلل الحاجة إلى الاختبارات الآلية مع الحفاظ على صحة البيانات والتوقيع من قِبل Microsoft.
خيار توقيع الاختبار مُصممة للتطوير والاختبار الداخلي، حيث تُستخدم شهادات غير عامة أو شهادات صادرة عن بنية تحتية عامة (PKI) خاصة. لن يتم تحميل برامج التشغيل هذه إلا إذا تم تكوين النظام في وضع الاختبار أو بسياسات محددة تسمح ببرامج تشغيل الاختبار.
الاستثناءات ووحدات التحكم ذات التوقيع المتقاطع
في الإصدارات المتوسطة من Windows 10، ما يسمى "وحدات التحكم ذات التوقيع المتقاطع" لا تزال برامج التشغيل المُوقّعة مُسموحًا بها في ظل ظروف مُعيّنة. هذه برامج تشغيل مُوقّعة من قِبل المُورّد بشهادة رمز مصادقة مُرتبطة بشهادة وسيطة مُوقّعة من قِبل Microsoft، مُتجاوزةً بذلك سير عمل بوابة الأجهزة بالكامل.
تحتفظ مايكروسوفت بعدة استثناءات لمنع فشل تشغيل الأنظمة المُثبّتة. يُسمح باستخدام برامج التشغيل المُوقّعة في الحالات التالية: تم ترقية الكمبيوتر من إصدار سابق من Windows إلى Windows 10 الإصدار 1607، و حذاء تم تعطيل التمهيد الآمن في BIOS/UEFI؛ أو تم توقيع برنامج التشغيل باستخدام شهادة صادرة قبل 29 يوليو 2015 والتي تتصل بهيئة تصديق معتمدة ومتقاطعة التوقيع.
لتقليل خطر جعل النظام غير صالح للاستخدام، وحدات التحكم في التمهيد لا تُحظر هذه البرامج حتى لو لم تكن متوافقة مع السياسات الجديدة، ولكن يُمكن لمساعد توافق البرامج تحديدها واقتراح إزالتها أو استبدالها. الهدف هو تجنب تعطيل تسلسل التمهيد، وإزالة برامج التشغيل غير المتوافقة تدريجيًا.
متطلبات توقيع إصدار Windows
تختلف متطلبات التوقيع حسب إصدار محدد من نظام التشغيل وما إذا كان النظام يستخدم التمهيد الآمن. بشكل عام، يمكن تلخيص جدول سياسة التوقيع لإصدارات العميل كما يلي:
- ويندوز فيستا و نوافذ 7وأيضًا Windows 8+ مع تعطيل التمهيد الآمنفي شهادات 64 بت، يلزم وجود توقيع، بينما في شهادات 32 بت، لا يلزم وجود توقيع. يمكن تضمين التوقيع في الملف أو في كتالوج مرتبط، والخوارزمية المطلوبة هي SHA-2. يجب أن تنتهي سلسلة الشهادات بجذور موثوقة قياسية لضمان سلامة الكود.
- Windows 8 و8.1، وإصدارات Windows 10 1507 و1511 مع تمكين التمهيد الآمنتتطلب برامج التشغيل 32 بت و64 بت برامج تشغيل مُوقّعة. لا يزال التوقيع المُضمّن أو المُسجّل مسموحًا به، باستخدام SHA-2، بالاعتماد على الجذور القياسية لضمان سلامة الكود.
- إصدارات Windows 10 1607 و1703 و1709 مع التمهيد الآمنتم تشديد هذا المتطلب، ويجب ربط التوقيعات بشهادات الجذر الخاصة بشركة Microsoft (Microsoft جذر هيئة 2010، هيئة شهادة الجذر من Microsoft وهيئة شهادة الجذر من Microsoft).
- Windows 10 الإصدار 1803 والإصدارات الأحدث مع التمهيد الآمن:يتم الحفاظ على نفس متطلبات التوقيع المرتبطة بسلطات الجذر الخاصة بشركة Microsoft المذكورة أعلاه، لكل من الأنظمة ذات 32 بت و64 بت.
إلى جانب توقيع رمز السائق، يجب أن تتوافق الحزمة أيضًا مع متطلبات التوقيع لتثبيت أجهزة PnPيعني هذا أنه يجب ربط ملفات .INF والفهرسات والثنائيات بشكل صحيح وانعكاسها في التوقيع الخاص بمثبت الجهاز (و مدير الأجهزة) أعتبرها صالحة.
هناك أيضًا أنواع خاصة من السائقين مثل ELAM (الإطلاق المبكر لمكافحة البرامج الضارة)والتي يتم تحميلها في وقت مبكر جدًا من عملية التمهيد لحماية النظام من البرمجيات الخبيثة مستوى منخفض. تتضمن هذه البرامج متطلبات توقيع وشهادة إضافية موثقة في دليل مكافحة البرامج الضارة للتشغيل المبكر.
توقيع برنامج تشغيل لنظامي التشغيل Windows 10 وWindows 8.x وWindows 7
إذا كنت مطور برامج تشغيل أو تعمل في بيئة يتم فيها توزيع برامج تشغيل مخصصة، فيجب عليك الامتثال لـ برنامج توافق أجهزة Windows (WHCP) باستخدام الأدوات المناسبة لكل إصدار: HLK لنظام التشغيل Windows 10 وHCK للإصدارات السابقة.
في حالة نظام التشغيل Windows 10، سيكون التدفق النموذجي هو: تنزيل مجموعة مختبر الأجهزة (HLK) لكل إصدار من Windows 10 ترغب في دعمه، ثبّت بيئة الاختبار وشغّل عملية اجتياز شهادة كاملة على جهاز عميل يعمل بهذا الإصدار. سيؤدي كل تشغيل إلى إنشاء سجل اختبار.
إذا اختبرت برنامج التشغيل في عدة إصدارات، فستحصل على سجلات متعددة. هذا أمر طبيعي. الجمع بين كل ذلك الجذوع في تقرير واحد باستخدام أحدث إصدار من HLK. يُبسّط هذا المزيج عملية الإرسال إلى بوابة الأجهزة، ويسمح لشركة واحدة بتغطية إصدارات متعددة من النظام.
بمجرد حصولك على السجلات، يمكنك إرسال الملف الثنائي لوحدة التحكم ونتائج HLK المجمعة إلى لوحة مركز مطوري أجهزة Windowsهناك يمكنك اختيار نوع التوقيع الذي تريده (على سبيل المثال، الإنتاج، الإثبات، وما إلى ذلك)، وتكوين خصائص الشحنة وانتظار عملية Microsoft التلقائية لإنشاء الكتالوجات الموقعة وإرجاع الحزمة المعتمدة بالفعل إليك.
يتم اتباع نهج مماثل لنظامي التشغيل Windows 7 وWindows 8 وWindows 8.1، ولكن باستخدام مجموعة شهادة الأجهزة (HCK) مناسب لكل إصدار. تحتفظ Microsoft بدليل مستخدم لهذه المجموعة يشرح سير عمل الاختبار والتحقق والتسليم.
توقيع برنامج التشغيل للإصدارات السابقة لإصدار Windows 10 1607
قبل وصول إصدار Windows 10 1607، كانت هناك حاجة إلى العديد من أنواع برامج التشغيل شهادة أصلية مع اعتماد مايكروسوفت المتبادل. هذه التقنية، المعروفة بالتوقيع المتبادل، أتاحت للمصنعين توقيع برامج التشغيل الخاصة بهم وجعل ويندوز يقبلها كما لو كانوا "مُباركين" ببنية مايكروسوفت التحتية.
من بين وحدات التحكم التي تتطلب هذا النموذج المميز كانت برامج تشغيل الأجهزة في وضع kernelتشمل هذه برامج تشغيل وضع المستخدم التي تتفاعل بشكل وثيق مع النواة، وبرامج التشغيل المستخدمة لتشغيل أو معالجة المحتوى المحمي (الصوت والفيديو المحميان بنظام إدارة الحقوق الرقمية). تتضمن هذه الأخيرة برامج تشغيل الصوت المستندة إلى PUMA أو PAP، بالإضافة إلى برامج تشغيل الفيديو التي تُدير حماية الإخراج (PVP-OPM).
يتضمن توقيع الكود لمكونات الوسائط المتعددة المحمية إرشاداته الخاصة، حيث يجب أن تضمن سلسلة الثقة وملحقات الشهادة عدم إمكانية اعتراض المحتوى المحمي أو التلاعب به بسهولة.
الاستخدام العملي لـ SignTool لتوقيع برامج التشغيل في وضع kernel (Windows 7 و8)
من الناحية العملية، الأداة الرائدة لتوقيع الملفات الثنائية في Windows هي أداة SignTool، مُضمن في حزمة تطوير برامج Windows. بالنسبة لبرامج تشغيل وضع kernel في نظامي التشغيل Windows 7 و8، هناك عدد من الخيارات المفيدة بشكل خاص عند التوقيع والتحقق.
من بين أهم معلمات SignTool هي: /ac لإضافة شهادة إضافية (مثل شهادة Microsoft المتقاطعة)/f للإشارة إلى الملف الذي يحتوي على شهادة التوقيع (على سبيل المثال، .pfx)، و/p لكلمة المرور الخاصة بهذا PFX، و/fd لتحديد خوارزمية التجزئة (على سبيل المثال، /fd sha256 لفرض SHA-256، حيث أن SHA-1 هو الإعداد الافتراضي التاريخي).
المعلمة هي أيضا أساسية /n «الاسم الشائع للشهادة»يتيح لك هذا اختيار الشهادة الصحيحة من مخزن شهادات Windows باستخدام اسمها الشائع. لإضافة طوابع زمنية، يمكنك استخدام /t مع خادم Authenticode تقليدي أو /tr مع خادم متوافق مع RFC 3161، وهو الخيار الأحدث والأكثر استحسانًا.
من الممكن أن يكون أحد مسارات العمل هو جمع ملفات برنامج التشغيل الثنائية في دليل عمل، أو حتى نسخها إلى مجلد bin في حزمة تطوير برامج Windows. بعد ذلك، يتم الحصول على شهادة توقيع الكود، وإذا لزم الأمر، شهادات مايكروسوفت المتبادلة (على سبيل المثال، CrossCert المُطابق للجهة المُصدِرة للشهادة التي أصدرت شهادتك). يُوضَع كلاهما في نفس الدليل الذي ستُشغِّل منه SignTool.
مع كل شيء جاهز، يمكن أن يكون أمر المثال شيئًا مثل: أداة تسجيل الدخول /ac CrossCert.crt /f CodeSign.pfx /p password1234 /fd sha256 /tr http://timestamp.globalsign.com/tsa/r6advanced1 filter.sysيؤدي هذا إلى إنشاء توقيع حديث باستخدام SHA-256، ويتضمن التصديق المتبادل، ويضيف طابعًا زمنيًا RFC 3161، وهو أمر ضروري لبقاء التوقيع صالحًا حتى بعد انتهاء صلاحية الشهادة.
بمجرد التوقيع، يوصى بالتحقق باستخدام أمر مثل signtool verify -v -kp filter.sysيعرض الخيار -v معلومات مفصلة، بينما يتحقق الخيار -kp من صحة التوقيع وفقًا لمعايير برنامج التشغيل في وضع النواة. إذا أشار الناتج إلى صحة التوقيع وانتهاء سلسلة الثقة بجذر مقبول، يكون برنامج التشغيل جاهزًا للنشر.
من المهم تذكر أنه في كثير من الحالات، يكون ملف الكتالوج (.CAT) مُوقّعًا أيضًا. تُكرّر العملية: يُوقّع ملف .CAT ويُتحقق منه، وبعد أن يصبح كل شيء على ما يُرام، يُثبّت برنامج التشغيل بشكل طبيعي على النظام.
التوقيع على التصديق وإنشاء حزم CAB
تقدم مايكروسوفت التوقيع كإثبات كطريقة خفيفة الوزن نسبيًا لتوزيع برامج التشغيل، خاصةً على أنظمة عملاء Windows 10. يتحمل البائع مسؤولية ضمان استيفاء برنامج التشغيل للمتطلبات، وتقتصر مهمة Microsoft على التحقق والتوقيع، مما يتجنب الحاجة إلى مجموعة كاملة من اختبارات HLK في بعض السيناريوهات.
لإرسال وحدة تحكم عن طريق الإثبات، ملف CAB الذي يجمع المكونات الأساسية للحزمة. يتضمن ملف CAB النموذجي برنامج التشغيل الثنائي نفسه (.SYS)، وملف INF (.INF) الذي سيستخدمه Windows أثناء التثبيت، ورموز التصحيح (.PDB) لتحليل الأخطاء، وأحيانًا كتالوجات CAT التي تستخدمها Microsoft كمرجع للتحقق من البنية (مع أنها تُنشئ كتالوجاتها الخاصة للتوزيع النهائي).
إنشاءه بسيط: تُجمع جميع الملفات المطلوب توقيعها في مجلد واحد، على سبيل المثال C:\Echo. من نافذة الأوامر باستخدام امتيازات المسؤول، يتم استشارة تعليمات MakeCab لمعرفة خياراتها ويتم إعداد ملف DDF مع التوجيهات الضرورية التي تشير إلى الملفات التي سيتم ضغطها، والخزانة التي سيتم إنشاؤها، والمجلدات الفرعية التي يجب تنظيمها داخل CAB.
في مثال وحدة تحكم Echo، يمكن لملف DDF تعيين اسم المخرج إلى Echo.cab، وتفعيل ضغط MSZIP، وتحديد دليل الوجهة (DestinationDir=Echo) لضمان عدم وجود ملفات غير مرغوب فيها في الدليل الجذر لـ cab. بعد ذلك، يتم سرد المسارات الكاملة لملفي Echo.inf وEcho.sys ليتضمنها MakeCab.
مع استعداد DDF، يمكنك تشغيل شيء مثل هذا MakeCab /f Echo.ddfستعرض الأداة عدد الملفات التي ضمّنتها، ومستوى الضغط المُحقق، والمجلد (عادةً القرص 1) الذي وضعت فيه ملف CAB الناتج. ما عليك سوى فتح ملف Echo.cab باستخدام مستكشف الملفات للتأكد من احتوائه على كل ما هو متوقع.
توقيع CAB مع شهادة EV وإرسالها إلى مركز الشركاء
قبل تحميل الحزمة إلى بوابة أجهزة Microsoft، من الطبيعي أن توقيع CAB باستخدام شهادة EV (التحقق الموسع)توفر هذه الشهادات، التي تكون أكثر صرامة في التحقق من صحة الكيان، ثقة إضافية وغالبًا ما تكون شرطًا لأنواع معينة من التوقيعات.
تختلف العملية قليلاً باختلاف مُزوّد شهادة EV، ولكن الفكرة العامة هي استخدام SignTool مرة أخرى، وهذه المرة لاستهداف CAB. قد يكون الأمر النموذجي كالتالي: SignTool sign /s MY /n “اسم الشركة” /fd sha256 /tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /td sha256 /v C:\Echo\Disk1\Echo.cab، مما يضيف توقيع SHA-256 مع طابع زمني SHA-256 إلى قمرة القيادة.
بعد التوقيع، يمكنك الوصول إلى مركز شركاء مايكروسوفتعلى وجه التحديد، انتقل إلى لوحة الأجهزة وسجّل الدخول باستخدام بيانات اعتماد مؤسستك. من هناك، اختر "إرسال جهاز جديد"، ثم حمّل ملف CAB المُوقّع، وأدخل بيانات الإرسال: اسم المنتج، ونوع التوقيع المطلوب، وما إذا كنت تريد توقيعًا تجريبيًا أم توقيعًا إنتاجيًا فقط، إلخ.
من المهم لا تقم بتفعيل خيارات توقيع الاختبار إذا كنت تبحث عن برنامج تشغيل إنتاجي، في قسم التوقيعات المطلوبة، يمكنك اختيار الإصدارات التي تريد تضمينها في الحزمة (على سبيل المثال، التوقيعات لإصدارات مختلفة من Windows أو المعماريات).
بعد إكمال النموذج، انقر على "إرسال" ودع البوابة تُعالج الحزمة. عند انتهاء مايكروسوفت من توقيع برنامج التشغيل، ستُشير لوحة التحكم إلى أن عملية الإرسال قد تمت، وستُتيح لك تنزيل برنامج التشغيل الموقّع بالفعل، وعادة ما تكون مصحوبة بالكتالوجات والبيانات الوصفية اللازمة لتوزيعها.
تأكد من أن وحدة التحكم موقعة بشكل صحيح
بعد تنزيل الحزمة، حان الوقت للتحقق من أن كل شيء على ما يرام. الخطوة الأولى هي استخراج الملفات من الشحنة إلى مجلد مؤقت وفتح نافذة موجه الأوامر باستخدام امتيازات المسؤولمن هناك، يمكنك استخدام SignTool للتحقق من التوقيعات المطبقة على الملفات الثنائية الرئيسية.
الأمر الأساسي سيكون SignTool تحقق من Echo.sysالذي يتحقق بسرعة من صحة التوقيع. لمزيد من التحقق، يمكنك استخدام SignTool تحقق من /pa /ph /v /d Echo.sysحيث يشير /pa إلى أنه يجب استخدام سياسة Authenticode، ويضيف /ph فحص التجزئة، ويقوم /v بإنشاء إخراج مفصل يحتوي على كافة معلومات سلسلة الشهادات.
لمراجعة استخدامات المفاتيح المُحسّنة (EKUs) للشهادة المُستخدمة للتوقيع، يُمكنك استخدام مستكشف Windows: انقر بزر الماوس الأيمن على الملف الثنائي، ثم اختر "خصائص"، ثم انتقل إلى علامة تبويب "التوقيعات الرقمية"، وحدد المُدخل المُناسب، ثم انقر على "التفاصيل". من "عرض الشهادة" وعلامة تبويب "التفاصيل"، يُمكنك فحص حقل "استخدامات المفاتيح المُحسّنة" للتأكد من أنه يتضمن الإضافات المناسبة لتوقيع الكود أو برنامج التشغيل.
تتضمن العملية الداخلية لبعض سير عمل التوقيع أن Microsoft أعد إدخال توقيع SHA-2 الخاص بك في الملف الثنائي، تُحذف أي توقيعات يطبقها العميل إذا لم تكن متوافقة مع السياسات الحالية. كما يُنشأ ملف كتالوج جديد موقّع من قِبل مايكروسوفت، ليحل محل أي ملفات .CAT سابقة أرسلها البائع.
اختبار وتثبيت برنامج التشغيل على نظام التشغيل Windows
بعد توقيع برنامج التشغيل، يبقى التأكد من تثبيته وعمله بشكل صحيح على النظام المستهدف. من لوحة تحكم المسؤول، يمكن استخدام أدوات مثل [أدخل أسماء الأدوات هنا]. المساعدة DevCon لأتمتة عملية التثبيت. على سبيل المثال، إذا كانت الحزمة تحتوي على ملف echo.inf يُعرّف جهاز root\ECHO، فسيكون كافيًا تشغيل devcon install echo.inf root\ECHO في المجلد المناسب.
أثناء هذه العملية، إذا تم توقيع كل شيء بشكل صحيح، لا ينبغي أن تظهر الإعلانات قد تظهر رسائل مثل "يتعذر على Windows التحقق من ناشر برنامج التشغيل هذا". إذا ظهرت، فهذا يشير إلى وجود خلل في سلسلة الثقة أو في الكتالوجات، ويُنصح بمراجعة كلٍّ من التوقيعات وشهادات الجذر المُثبّتة على النظام.
في السيناريوهات الأكثر تعقيدًا، من الممكن إنشاء الشحنات مع وحدات تحكم متعددةلتحقيق ذلك، عادةً ما يتم إنشاء مجلدات فرعية منفصلة ضمن بنية الملف، مجلد لكل حزمة برنامج تشغيل (DriverPackage1، DriverPackage2، إلخ)، وضبط ملف DDF بحيث تُوضع كل مجموعة من ملفات .SYS و.INF في مجلد فرعي خاص بها داخل CAB. بعد ذلك، يجمع MakeCab كل شيء في خزانة واحدة جاهزة للتقديم إلى البوابة.
توقيعات السائق من وجهة نظر المستخدم
من وجهة نظر المستخدم النهائي، يُنظر إلى توقيع السائق على أنه مرشح الأمان المدمج في Windowsكما هو الحال مع التطبيقات المُوَقَّعة، تكمن الفكرة في أن يعرف المستخدم أن البرنامج من مصدر شرعي ولم يُعَدَّل. ومع ذلك، في حالة برامج التشغيل، يكون الشرط أكبر نظرًا لأنها تعمل بمستوى عالٍ جدًا من الصلاحيات.
عندما يتم توقيع السائق بشكل صحيح ونشره من خلال القنوات الرسمية، تحديث ويندوز يُوزّع نظام التشغيل نفسه هذه التحديثات بشفافية تامة، مما يُسهّل على المستخدمين الحصول على الإصدارات المُحدّثة والمُصحّحة دون الحاجة للبحث يدويًا، مع ضمان اجتيازها معايير مايكروسوفت.
تظهر المشكلة عندما تحتاج إلى التثبيت برامج التشغيل غير الموقعة رقميًا أو لم تعد السياسات الحالية تقبل توقيعه (على سبيل المثال، عند محاولة استخدام أجهزة قديمة على أنظمة أحدث). في هذه الحالات، يحظر Windows التثبيت أو يعرض تحذيرات متكررة، مما يفرض استخدام حلول أكثر تقدمًا.
طرق تثبيت برامج التشغيل غير الموقعة (ومخاطرها)
هناك عدة طرق لتثبيت برامج التشغيل التي لا تتوافق مع سياسات التوقيع، ولكن من الضروري أن نضع في الاعتبار أن تتضمن كل طريقة مستوى مختلفًا من المخاطرالتعديل المؤقت الذي يتم التراجع عنه عند إعادة التشغيل ليس هو نفسه تعطيل عمليات التحقق من السلامة بشكل كامل.
الطريقة المستخدمة بشكل شائع هي قم بتشغيل Windows عن طريق تعطيل الاستخدام الإلزامي لبرامج التشغيل الموقعة مؤقتًاللقيام بذلك، أعد تشغيل جهاز الكمبيوتر بالوصول إلى الخيارات المتقدمة (على سبيل المثال، من قائمة "ابدأ"، بالضغط على مفتاح Shift أثناء النقر على "إعادة التشغيل")، ثم انتقل إلى "استكشاف الأخطاء وإصلاحها" > "خيارات متقدمة" > "إعدادات بدء التشغيل"، وحدد خيار "تعطيل فرض توقيع برنامج التشغيل". سيبدأ النظام بعد ذلك بالتشغيل دون الحاجة إلى التوقيعات، مما يسمح لك بتثبيت برنامج التشغيل. عند إعادة التشغيل، ستُطبق الحماية تلقائيًا.
خيار آخر متاح فقط في Windows 10/11 Pro والإصدارات الأحدثللقيام بذلك، استخدم محرر نهج المجموعة (gpedit.msc). من إعدادات المستخدم > قوالب الإدارة > النظام > تثبيت برنامج التشغيل، يمكنك تعديل سياسة "توقيع الكود لبرامج تشغيل الأجهزة" وتعيينها إلى "معطل". بعد إعادة التشغيل، سيكون نظام ويندوز أكثر تساهلاً مع برامج التشغيل غير الموقعة أو ذات التوقيعات المشكوك فيها.
بالنسبة لسيناريوهات الاختبار والتطوير، هناك ما يسمى الوضع التجريبي يتم تفعيل وضع اختبار Windows من لوحة تحكم المسؤول بتشغيل الأمر bcdedit، ويتيح تحميل برامج التشغيل المُوقّعة بشهادات اختبار دون الحاجة إلى تمريرها عبر البنية التحتية العامة. في هذا الوضع، تظهر عادةً علامة مائية على سطح المكتب تُشير إلى أن النظام في وضع الاختبار.
وأخيرا، هناك الخيار الأكثر تطرفا: تعطيل التحقق من سلامة برنامج التشغيل تمامًا باستخدام bcdedit.exe (معامل nointegritychecks). هذا يجعل النظام عُرضةً تمامًا لتثبيت أي برنامج تشغيل، سواءً كان شرعيًا أم لا، ويجب استخدامه فقط في حالات محددة جدًا ومع معرفة تامة بما يجري.
المخاطر الحقيقية لتعطيل توقيع السائق
إن تعطيل هذه الحماية ليس مجرد إزعاج بسيط، بل إنه يفتح الباب أمام أحد أصعب التهديدات التي يمكن اكتشافها: أدوات الجذر على مستوى برنامج التشغيليتم تثبيت هذه البرامج كما لو كانت برامج تشغيل شرعية، ولكن بمجرد تحميلها فإنها تتمتع بأذونات النظام والقدرة على مراقبة النظام أو التلاعب به على مستوى منخفض للغاية.
يستطيع هذا النوع من برامج التجسس الجذرية اعتراض حركة مرور الإنترنت، وزرع شهادات مزيفة، وإعادة توجيه الاتصالات إلى مواقع يسيطر عليها المهاجمون، ومنع تثبيت برامج مكافحة الفيروسات، وتسهيل دخول برامج ضارة أخرى. كل هذا يمكن القيام به دون أي أثر يُذكر للمستخدم، حتى مع العديد من حلول الأمان التقليدية.
من خلال العمل بأعلى الامتيازات، فإن برامج التشغيل الخبيثة هذه تعمل عمليًا غير مرئية ويصعب التخلص منهافي كثير من الحالات، الحل الواقعي الوحيد ينطوي على شكل قم بإصلاح جهاز الكمبيوتر بالكامل والبدء من الصفر، وهو ما يمثل خسارة كبيرة للوقت والبيانات إذا لم تكن هناك نسخ احتياطية محدثة.
لذلك، عندما يطلب منك تطبيق تعطيل فرض توقيع برنامج التشغيل لتثبيت "شيء سحري"، فمن الحكمة أن تكون حذرًا. كلما أمكن، يُفضل... ابحث عن البدائل أو الإصدارات الموقعةحتى لو كان ذلك يعني التخلي عن بعض الأجهزة القديمة أو بعض الوظائف المحددة.
برامج تشغيل Windows مقابل برامج تشغيل الشركة المصنعة
عند تثبيت الأجهزة الطرفية والمكونات، عادةً ما يقدم Windows برامج تشغيل عامة تتيح لك هذه البرامج استخدام الأجهزة بشكل أساسي. على سبيل المثال، يمكن للطابعة متعددة الوظائف الطباعة دون مشاكل باستخدام برنامج التشغيل العام، ولكن إذا كنت ترغب في المسح الضوئي، أو استخدام وحدة تغذية المستندات التلقائية، أو الوصول إلى خيارات متقدمة، فستحتاج بالتأكيد إلى حزمة برنامج التشغيل الرسمية من الشركة المصنعة.
ينطبق الأمر نفسه على بطاقات الصوت والرسوميات وغيرها من الأجهزة المعقدة: مع برامج التشغيل العامة، سيعمل الكمبيوتر، ولكنك ستفقد الميزات وتحسينات الأداء وأدوات التكوين المتقدمة. في كثير من الحالات، توفر برامج التشغيل الرسمية هذه الميزات أيضًا. إصلاحات الأخطاء المحددة التي لا تصل أبدًا إلى برامج التشغيل العامة لشركة Microsoft.
المكان المناسب لتنزيل هذه برامج التشغيل هو دائمًا الموقع الرسمي للشركة المصنعة للأجهزةعند البحث على جوجل، غالبًا ما ستجد صفحات خارجية مليئة ببرامج تنزيل أو تثبيت مشبوهة. إذا لم يكن الرابط من نطاق الشركة المصنعة، فمن الأفضل تجاهله.
إذا ظلّ توقيع برنامج التشغيل مُفعّلاً، فسيحظر Windows العديد من هذه الحزم المشبوهة عند اكتشاف أنها برامج غير صالحة أو أن توقيعاتها غير مُرتّبة. يُشكّل هذا طبقة أمان إضافية ضدّ المُثبّتات غير الدقيقة أو الخبيثة.
حالة عملية: خطأ في توقيع الشهادة باستخدام برامج تشغيل وحدة معالجة الرسومات في نظام التشغيل Windows 7
على أجهزة الكمبيوتر ذات الأنظمة القديمة مثل Windows 7 64 بتمن الشائع نسبيًا مواجهة مشاكل عند تثبيت برامج تشغيل حديثة لبطاقات الرسومات أو غيرها من الأجهزة الحديثة. ومن الأمثلة الشائعة على ذلك الخطأ "لم يتم تثبيت شهادات التوقيع. يُرجى تثبيت الشهادات المطلوبة" عند محاولة تثبيت برامج التشغيل لـ NVIDIA لوحدات معالجة الرسوميات مثل GTX 1060 أو GTX 950.
في كثير من الحالات، حتى لو عطّل المستخدم توقيع برنامج التشغيل عند بدء التشغيل، فإنه يفشل في العمل بعد إعادة التشغيل بسبب إعادة تفعيل سياسة التوقيع. وقد جُرِّبت حلولٌ مثل تثبيت جميع الإصدارات السابقة من برنامج التشغيل، أو استخدام برامج تثبيت بديلة (مثل Snappy Driver Installer)، أو تطبيق تحديثات دعم SHA-2 (مثل KB3033929)، أو إعادة التثبيت من "إدارة الأجهزة" دون جدوى.
أحد الحلول العملية التي نجحت هو استخراج محتويات إصدار المثبت يدويًا 474.11 (أحدث برنامج تشغيل WHQL لنظام التشغيل Windows 7) إلى مجلد، ومن "إدارة الأجهزة"، حدّث برنامج تشغيل وحدة معالجة الرسومات باختيار خيار البحث عن برنامج التشغيل في الكمبيوتر وتحديد المجلد. قد تفشل الطريقة نفسها مع الإصدارات الأحدث، مثل 474.14، إذا لم يتعرف المعالج على ملفات INF على أنها صالحة لذلك النظام.
يوضح هذا النوع من الحالات مدى حساسية التوازن بين برامج التشغيل الحديثة وشهادات SHA-2 و أنظمة التشغيل لم يعد مدعومًاأصبح من الصعب بشكل متزايد تثبيت برامج التشغيل الحديثة والحفاظ عليها آمنة على الأنظمة الأساسية القديمة التي لا تتلقى تحديثات أو تصحيحات أمان.
كيفية اكتشاف المشكلات المتعلقة ببرامج التشغيل الخاطئة وإصلاحها
حتى لو تم توقيع برامج التشغيل بشكل صحيح، فقد أن تصبح تالفة أو غير متسقة يمكن أن يحدث هذا لأسباب عديدة: التعارضات مع برامج أخرى، أو البرامج الضارة، أو عمليات التثبيت المتقطعة، أو تحديثات Windows التي لا تكتمل بنجاح، وما إلى ذلك. عندما يحدث هذا، يتوقف الجهاز المتأثر عادةً عن العمل أو يعمل بشكل غير منتظم.
أداة التشخيص الأولى هي مدير الأجهزةبالنقر بزر الماوس الأيمن على زر "ابدأ" واختيار الخيار المناسب، ستظهر قائمة كاملة بجميع الأجهزة المكتشفة. في حال وجود مشاكل في برنامج تشغيل أي جهاز، سيتم تمييزه برمز تحذير أصفر.
في هذه الحالات، تكون المحاولة الأولى للحل هي النقر بزر الماوس الأيمن على الجهاز، واختيار "تحديث برنامج التشغيل"، ثم السماح لويندوز بالبحث عن برنامج تشغيل أنسب، إما محليًا أو عبر تحديث ويندوز. إذا لم يُجدِ ذلك نفعًا، يمكنك إلغاء تثبيت الجهاز (مع الاحتفاظ ببرنامج التشغيل أو بدونه) وإعادة تشغيله ليحاول ويندوز إعادة تثبيته من البداية.
بالإضافة إلى ذلك، يتضمن Windows مستكشف أخطاء الأجهزة والأجهزة في لوحة الإعدادات، وتحديدًا في قسم "التحديث والأمان" > "استكشاف الأخطاء وإصلاحها"، يقوم هذا المعالج بفحص النظام بحثًا عن أي مخالفات ويقترح إجراءات تلقائية لاستعادة وظائف برامج تشغيل معينة.
إذا كان تحديث برنامج تشغيل معين قد تسبب في حدوث المشكلة، فقد يكون من المفيد استخدام خيار "العودة إلى وحدة التحكم السابقة" في علامة تبويب "برنامج التشغيل" ضمن خصائص الجهاز، بشرط احتفاظ Windows بالإصدار السابق. سيؤدي هذا إلى استعادة التثبيت المُشكل وقد يُعيد استقرار النظام.
عرض وتحليل برامج التشغيل التابعة لجهات خارجية المثبتة على نظام التشغيل Windows

للحصول على قدر أكبر من التحكم فيما يتم تثبيته على النظام، يتم استخدام أدوات الطرف الثالث مثل DriverView تعرض أداة Nirsoft قائمة مفصلة بجميع برامج التشغيل المثبتة على جهاز الكمبيوتر الخاص بك. إنها أداة مساعدة مجانية محمولة تُبسط عملية تدقيق برامج التشغيل بشكل كبير.
يستخدم DriverView رمز لون بسيط للغاية: تظهر برامج تشغيل Microsoft ذات التوقيع الرقمي الصالح بخلفية بيضاء.برامج التشغيل الخارجية (من الشركات المصنعة أو برامج إضافية) مُميّزة باللون الأحمر. يُساعد هذا على تحديد الأجزاء التي لا تعتمد بشكل مباشر على نظام التشغيل.
يمكن فرز القائمة حسب الأعمدة، على سبيل المثال حسب "الشركة" لتجميع جميع برامج التشغيل من نفس الشركة. بالإضافة إلى ذلك، تتضمن قائمة "عرض" عادةً خيارًا لإخفاء جميع برامج تشغيل مايكروسوفت وعرض برامج تشغيل الجهات الخارجية فقط، مما يسمح لك بالتركيز على تلك التي يُحتمل أن تُسبب تعارضات.
النقر المزدوج على أي إدخال يفتح نافذة تحتوي على معلومات مفصلة عن السائقالإصدار، المسار الكامل، الوصف، الشركة المصنعة، تاريخ التحميل، وما إلى ذلك. في حالة وجود برامج تشغيل غير معروفة أو مشبوهة، تساعد هذه البيانات في تحديد ما إذا كانت جزءًا من برنامج نستخدمه بالفعل أو ما إذا كان من المستحسن إجراء مزيد من التحقيق وحتى إلغاء تثبيتها.
بالنظر إلى هذه الصورة الكاملة، فمن الواضح أن توقيعات وشهادات برنامج التشغيل في Windows إنها ليست مجرد إجراءات شكلية، بل هي عنصر أساسي للحفاظ على استقرار النظام وأمانه. إن فهم كيفية توقيع برامج التشغيل، والمتطلبات التي تتغير بين إصدارات Windows، وأدوات التحقق المتاحة، وكيفية التصرف عند عدم توقيع برنامج تشغيل أو تعطله، يتيح لنا تحقيق أقصى استفادة من أجهزتنا مع الحفاظ على اليقظة ضد التهديدات منخفضة المستوى.
كاتب شغوف بعالم البايت والتكنولوجيا بشكل عام. أحب مشاركة معرفتي من خلال الكتابة، وهذا ما سأفعله في هذه المدونة، لأعرض لك كل الأشياء الأكثر إثارة للاهتمام حول الأدوات الذكية والبرامج والأجهزة والاتجاهات التكنولوجية والمزيد. هدفي هو مساعدتك على التنقل في العالم الرقمي بطريقة بسيطة ومسلية.
