متطلبات توقيع برنامج التشغيل في Windows 11: ميزة أمنية تحد من حرية المُستخدم وتضر بتجربته
لا شك أن نظام التشغيل Windows 11، وهو نظام تشغيل سطح المكتب الأكثر استخدامًا في العالم، يعاني من بعض المشاكل. ومع ذلك، وعلى الرغم من هذه المشاكل، فإنه الإصدار الأكثر دقة من نظام التشغيل الخاص بالشركة، بغض النظر عن الإضافات غير المستساغة التي دفعت العديد من المستخدمين إما إلى الالتزام بنظام التشغيل Windows 10 لأطول فترة ممكنة أو حتى القفز إلى نظام التشغيل Linux بدلاً من ذلك. ومع ذلك، هناك جانب محدد من نظام التشغيل Windows لطالما أزعجني، وهو سياسة Microsoft طويلة الأمد المتمثلة في مطالبة برامج التشغيل بالتوقيع رقميًا قبل أن يقوم نظام التشغيل بتحميلها.
ببساطة، برنامج التشغيل هو رمز منخفض المستوى (غالبًا ما يعمل في نواة نظام التشغيل) يسمح للأجهزة أو البرامج بالتفاعل مع Windows. يتضمن برنامج التشغيل الموقع توقيعًا مشفرًا من سلطة موثوقة (مثل شهادة Microsoft الخاصة أو، في الماضي، مرجع مصدق معتمد من Microsoft)، والذي يتحقق Windows من صحته وسلامته قبل السماح له بالتشغيل. لقد تطور تطبيق توقيع برنامج التشغيل هذا على مر العقود، ليصبح حارس بوابة إلزاميًا في هذه العملية، وله طبيعة مزدوجة.
من ناحية، لا يمكن إنكار أنه يحسن الأمان بشكل كبير عن طريق منع البرامج الضارة من العمل على هذا المستوى العميق (بدون شهادة مناسبة على أي حال، والتي يمكن سرقتها)، ولكن من ناحية أخرى، فإنه يحد من تحكم المستخدم ويطالب بالامتثال لقواعد Microsoft. إنه معادي لحرية المستخدم، ولكنه يتمتع بفوائد واضحة أيضًا. إنها واحدة من أفضل ميزات الأمان في Windows، ولكن وجودها بطبيعته مناهض للمستهلك.
ما هي تواقيع برامج التشغيل؟
تعتبر تواقيع برامج التشغيل بمثابة “شهادات رقمية” تمنحها شركة Microsoft أو جهة موثوقة أخرى لبرامج تشغيل الأجهزة. تخبر هذه التواقيع نظام التشغيل Windows بأن برنامج التشغيل أصلي ولم يتم التلاعب به أو تعديله بعد نشره من قبل الشركة المصنعة للجهاز. فكر في الأمر على أنه ختم موافقة رقمي يضمن سلامة وموثوقية برنامج التشغيل.
بعبارة أخرى، هي وسيلة للتحقق من هوية ناشر برنامج التشغيل والتأكد من أن البرنامج لم يتم العبث به. هذا مهم للغاية لأن برامج التشغيل تعمل على مستوى عميق داخل نظام التشغيل، وإذا كان برنامج التشغيل ضارًا أو غير مستقر، فقد يتسبب ذلك في مشاكل خطيرة مثل أعطال النظام أو حتى الثغرات الأمنية.
عندما تقوم بتثبيت برنامج تشغيل موقّع، يتحقق Windows من صحة التوقيع قبل السماح بتثبيت برنامج التشغيل. إذا كان التوقيع صالحًا، فهذا يعني أن برنامج التشغيل قد تم اختباره واعتماده من قبل Microsoft أو جهة موثوقة أخرى، وأنه من الآمن تثبيته. أما إذا كان التوقيع غير صالح أو مفقودًا، فسيحذرك Windows من أن برنامج التشغيل قد يكون غير آمن أو غير متوافق مع نظامك.
لماذا تعتبر تواقيع برامج التشغيل مهمة؟
- الأمان: تمنع تثبيت برامج التشغيل الضارة أو المعدلة التي قد تعرض نظامك للخطر.
- الاستقرار: تضمن أن برامج التشغيل متوافقة مع Windows وأنها لن تتسبب في مشاكل في النظام.
- الموثوقية: تشير إلى أن برنامج التشغيل قد تم اختباره واعتماده من قبل Microsoft أو جهة موثوقة أخرى.
بشكل عام، تعتبر تواقيع برامج التشغيل آلية أمان مهمة تساعد في حماية نظامك من البرامج الضارة وتضمن استقراره وموثوقيته. لذا، من الأفضل دائمًا تثبيت برامج التشغيل الموقعة فقط.
تاريخ طويل من الحماية
يعتبر توقيع برنامج التشغيل جزءًا أساسيًا من ميزة أمان تكامل التعليمات البرمجية من Microsoft، والتي تم تقديمها لأول مرة في عصر Windows Vista وأصبحت إلزامية مع Windows 10، الإصدار 1607. المفهوم بسيط ومباشر: يجب أن يحمل أي كود يتم تشغيله في نواة Windows (المعروفة باسم “Ring 0”) توقيعًا رقميًا صالحًا من سلطة موثوقة. وفقًا لوثائق Microsoft الرسمية، فإن تكامل التعليمات البرمجية “يحسن أمان نظام التشغيل عن طريق التحقق من سلامة برنامج التشغيل أو ملف النظام في كل مرة يتم تحميله في الذاكرة”، وفي إصدارات Windows ذات 64 بت، “يجب توقيع برامج تشغيل وضع kernel رقميًا.” من الناحية العملية، هذا يعني أن Windows سيرفض تحميل أي برنامج تشغيل غير موقع بشهادة معترف بها.
كما هو الحال في أنظمة التشغيل الأخرى، فإن النواة (ntoskernel.exe، أو نواة Windows NT) هي جوهر نظام التشغيل بأعلى الامتيازات، لذا فإن منع التعليمات البرمجية غير المصرح بها من التشغيل في هذه المنطقة أمر بالغ الأهمية. تضمن التوقيعات الرقمية أن برنامج التشغيل قد تم نشره بواسطة مطور محدد ولم يتم العبث به منذ ذلك الحين. ببساطة، لن يتم تثبيت برامج التشغيل غير الموقعة أو المعدلة بشكل ضار بموجب السياسة الافتراضية، ومن منظور أمني، هذا شيء جيد يحمي المستهلكين والشركات على حد سواء.
من الناحية العملية، هذا يعني أن موردي الأجهزة والمطورين الشرعيين يمرون بعملية توقيع برنامج التشغيل الخاص بهم، وفي Windows الحديث، غالبًا ما يتضمن ذلك الحصول على شهادة تحقق موسع وإرسال برنامج التشغيل إلى Microsoft للموافقة عليه. إذا حاولت التعليمات البرمجية التنفيذ في النواة دون هذه الموافقة، فسترى خطأً على غرار “يتعذر على Windows التحقق من التوقيع الرقمي لبرامج التشغيل المطلوبة لهذا الجهاز.” يمنع هذا فئة كاملة من الهجمات حيث قد يقوم برنامج ضار بتثبيت rootkit أو برنامج تشغيل ضار للسيطرة الكاملة على النظام. في Windows الحديث ذي 64 بت، يعد تحميل برنامج تشغيل الجهاز بشكل أساسي الطريقة الوحيدة المدعومة لتنفيذ تعليمات برمجية عشوائية في النواة، وهذا معطل تمامًا للملفات التنفيذية غير الموقعة.
ماذا عن المسؤول؟ حسنًا، حتى الحسابات التي تتمتع بهذا المستوى من الامتيازات ليست معفاة. بغض النظر عن هويتك، لا يمكنك تحميل برنامج تشغيل غير موقع على Windows ذي 64 بت. الطريقة الوحيدة لتعطيله هي استخدام خيار التمهيد “تعطيل فرض توقيع برنامج التشغيل”، والذي ستتم إعادة تعيينه عند التمهيد التالي، أو استخدام bcdedit لتعطيل عمليات التحقق تمامًا. إنها شبكة أمان وضعتها Microsoft ولا ينبغي حتى لمالك الكمبيوتر تجاوزها.
Microsoft تشدد المتطلبات على مر السنين
على مر السنين، قامت Microsoft تدريجياً بتشديد متطلبات نظام التشغيل Windows، وذلك بهدف ضمان تجربة مستخدم أكثر سلاسة وأمانًا. هذه التغييرات في المتطلبات تعكس التطورات التكنولوجية المستمرة، والحاجة إلى تحسين الأداء، وتعزيز الحماية ضد التهديدات الأمنية المتزايدة. ففي كل إصدار جديد من Windows، ترفع Microsoft الحد الأدنى من المواصفات المطلوبة لتشغيل النظام بكفاءة، مع التركيز بشكل خاص على المعالج، والذاكرة العشوائية (RAM)، ومساحة التخزين، بالإضافة إلى دعم أحدث التقنيات مثل TPM (وحدة النظام الأساسي الموثوق بها).
هذا التشديد في المتطلبات له آثار مباشرة على المستخدمين، حيث قد يجد البعض أن أجهزتهم القديمة غير قادرة على تشغيل أحدث إصدارات Windows. ومع ذلك، فإن هذه الخطوة تتيح لMicrosoft تقديم ميزات جديدة ومحسنة، وتحسين الأداء العام للنظام، وتوفير مستوى أعلى من الأمان. على سبيل المثال، تتطلب بعض الميزات المتقدمة في Windows 11 معالجات حديثة تدعم تعليمات معينة، بالإضافة إلى وجود وحدة TPM 2.0 لتعزيز الأمان وحماية البيانات.
بالإضافة إلى ذلك، فإن تشديد المتطلبات يسمح لMicrosoft بالتركيز على دعم الأجهزة الحديثة وتحسين التوافق مع أحدث التقنيات، مما يؤدي إلى تجربة مستخدم أفضل بشكل عام. وعلى الرغم من أن هذا قد يسبب بعض الإزعاج للمستخدمين الذين يمتلكون أجهزة قديمة، إلا أنه يضمن أن المستخدمين الذين يقومون بتحديث أجهزتهم أو شراء أجهزة جديدة سيحصلون على أفضل أداء وأمان ممكنين من نظام التشغيل Windows.
البداية كانت مع أداة بسيطة للتحقق من تعريفات الأجهزة
بدأ مسار Microsoft نحو فرض التوقيعات الرقمية لتعريفات الأجهزة في منتصف العقد الأول من القرن الحادي والعشرين، وسط تزايد المخاوف بشأن برامج التجسس، والجذور الخفية، واستقرار نظام التشغيل. بدءًا من Windows 2000، كانت أداة Driver Verifier برنامج سطر أوامر يمكن استخدامه لاختبار تعريفات الأجهزة بحثًا عن وظائف غير قانونية واكتشاف الأخطاء، قبل تحديثها بواجهة مستخدم رسومية تزامنت مع إطلاق Windows XP. في ذلك الوقت، كان توقيع التعريفات موجودًا ولكنه لم يكن مطلوبًا بشكل صارم، على الرغم من أنه يمكن تعيين خيار “نهج المجموعة” لمنع التثبيت تمامًا، أو تحذير المستخدم مع السماح بالتثبيت، أو مجرد التثبيت بصمت.
تغير هذا مع إصدارات x64 من Windows. بدءًا من Windows Vista (وحتى Windows XP x64 Edition بشكل محدود، على الرغم من أنه يمكنك التوقيع الذاتي على شهادة)، تطلبت أنظمة Windows ذات 64 بت توقيع تعريفات وضع kernel، كجزء من مبادرة أمنية أوسع شملت أيضًا Kernel Patch Protection، والتي يشار إليها بشكل غير رسمي باسم PatchGuard. كان إدخال التوقيع الإلزامي في Vista x64 مثيرًا للجدل في ذلك الوقت، لكن هدف Microsoft المعلن كان القضاء على فئات كاملة من البرامج الضارة، ووفقًا لبعض التقارير في ذلك الوقت، حماية إدارة الحقوق الرقمية (DRM).
ليس سراً أن فرض توقيع تعريفات الأجهزة يتماشى مع العديد من مصالح الصناعة، وهذا يعني أيضًا أنه في ذلك الوقت، كان بإمكان Microsoft إجبار الشركات بشكل أساسي على الدفع مقابل ترخيص لتوزيع تعريفاتها. خلاف ذلك، لن يتم تثبيت هذه التعريفات ببساطة على معظم الأجهزة. منذ ذلك الحين، أصبحت المتطلبات أكثر صرامة، وكما ذكرنا بالفعل، فرض Windows 10 الإصدار 1607 مطلب أن تكون جميع التعريفات موقعة بشهادة من Microsoft.
Windows 11، الذي يتطلب UEFI Secure Boot ووحدة TPM افتراضيًا على الأنظمة الجديدة، يضاعف من ضمان موثوقية عملية التمهيد والتعريفات. بمعنى آخر، لدى Windows الحديث سلطة مركزية (Microsoft) تحدد التعليمات البرمجية منخفضة المستوى المسموح بتشغيلها. والنتيجة هي هدف أصعب بكثير على المهاجمين اختراقه، مع وضع Microsoft (وعدد قليل من موردي الشهادات) بشكل ملائم كحراس لبوابة منصة Windows.
Microsoft تسعى لحماية النواة بأي ثمن
تسعى شركة Microsoft باستمرار إلى تعزيز أمن نظام التشغيل Windows، وتعتبر حماية النواة (Kernel) من أهم أولوياتها. النواة هي قلب نظام التشغيل، وأي اختراق لها يعني السيطرة الكاملة على الجهاز. لهذا السبب، تستثمر Microsoft بكثافة في تقنيات وبرامج تهدف إلى منع أي وصول غير مصرح به إلى النواة، وذلك من خلال عدة طبقات من الحماية.
تتضمن هذه الجهود استخدام تقنيات مثل “Kernel Patch Protection” (حماية تصحيح النواة) التي تمنع التعديلات غير المصرح بها على النواة، بالإضافة إلى “Virtualization-Based Security” (الأمان القائم على المحاكاة الافتراضية) الذي يعزل العمليات الحساسة في بيئة افتراضية آمنة. كما تعمل Microsoft على تطوير أدوات تحليل متقدمة للكشف عن أي محاولات لاختراق النواة في الوقت الفعلي.
إن حماية النواة تعتبر تحديًا مستمرًا، خاصة مع تطور أساليب الهجوم الإلكتروني. لذلك، تلتزم Microsoft بتحديث وتطوير آليات الحماية باستمرار لضمان بقاء نظام Windows آمنًا وموثوقًا. هذا الالتزام يعكس إدراك Microsoft لأهمية النواة في الحفاظ على سلامة بيانات المستخدمين وأجهزتهم.
حتى لو كان ذلك يعني أن المطورين العاديين لا يمكنهم استخدامه أيضًا
لتوضيح الأمر، هناك حجة قوية مفادها أن فرض توقيع برنامج التشغيل قد حسّن بشكل كبير من الأمان على نظام التشغيل Windows. من خلال حظر برامج التشغيل غير الموقعة، يتم إعاقة جميع أنواع الهجمات الرقمية، مثل الجذور الخفية والبرامج الضارة على مستوى kernel، والتي يمكن أن تختبئ بخلاف ذلك عن برنامج مكافحة الفيروسات. في الماضي، حاولت العديد من البرامج الضارة الأكثر تقدمًا العمل كبرنامج تشغيل من أجل الوصول إلى الذاكرة أو تغيير النظام على مستوى عميق. اليوم، إذا لم يكن لدى برنامج ضار شهادة رقمية مسروقة أو مسربة، فإنه ببساطة لا يمكنه تحميل برنامج تشغيل على نظام Windows 64 بت مصحح بالكامل، وهو حاجز كبير جدًا يجب عبوره مقارنة بأيام Windows XP. إذا تم العثور على برنامج تشغيل غير موقع عند التمهيد، فلن يبدأ تشغيل النظام ببساطة.
أصبحت أنظمة مكافحة الغش الحديثة للألعاب عبر الإنترنت أيضًا من المستفيدين الرئيسيين من متطلبات توقيع برنامج التشغيل في Windows. في العديد من العناوين التنافسية، سيحاول العديد من مطوري الغش الأكثر تقدمًا تشغيل برامج الغش الخاصة بهم في وضع kernel لتجنب اكتشافها بواسطة أدوات مكافحة الغش في وضع المستخدم. هذا هو السبب في أن Easy-Anti Cheat و Faceit و Riot Vanguard والعديد من حلول مكافحة الغش الأخرى تقوم جميعها بتثبيت برامج تشغيل kernel الخاصة بها كجزء من مجموعة مكافحة الغش. تعمل برامج مكافحة الغش هذه بمستوى امتياز أعلى حتى من مستخدم المسؤول (تذكر كيف لا يمكن حتى للمسؤول تثبيت برنامج تشغيل غير موقع؟) لمراقبة النظام بحثًا عن أي عمليات غش، ومنع الوصول إلى ذاكرة اللعبة، والتأكد من عدم التلاعب برمز اللعبة. يعد توقيع برنامج التشغيل جزءًا أساسيًا من هذا الخندق الواقي الذي يبنيه المطورون حول ألعابهم. نظرًا لأن Windows سيرفض أي برنامج تشغيل غير موقع بشكل صحيح، لا يمكن لمطوري الغش ببساطة إنشاء برنامج تشغيل kernel مخصص وتحميله بشكل عشوائي لتجاوز مكافحة الغش، حيث لن يسمح نظام التشغيل بذلك.
رداً على ذلك، بحث مزودو الغش ومطورو البرامج الضارة عن ثغرات تثبت فعالية فرض برنامج التشغيل. إحدى التقنيات الشائعة تُعرف باسم BYOVD، أو Bring Your Own Vulnerable Driver، حيث يجد المهاجمون برنامج تشغيل موقعًا بالفعل به ثغرات أمنية معروفة. يتم تحميل برنامج التشغيل الشرعي، ويقبله Windows، ثم يتم استغلال نقاط الضعف فيه من أجل تنفيذ التعليمات البرمجية في kernel. أحد هذه الأمثلة يسيء استخدام برنامج تشغيل Lenovo Mapper، وينشر برنامج تشغيل غش غير موقع ويعطل فحص TPM الذي تجريه Riot’s Vanguard.
كل هذا يتعلق أيضًا بهجمات وغش الوصول المباشر إلى الذاكرة (DMA). يسمح DMA لأجهزة الأجهزة بالوصول إلى ذاكرة النظام مباشرةً، متجاوزًا وحدة المعالجة المركزية (CPU) ويحتمل أن يسمح لجهاز كمبيوتر ثانوي بالقراءة من ذاكرة اللعبة أو الكتابة إليها. ومع ذلك، فإن Windows لديه حماية Kernel DMA التي تستخدم IOMMU لمنع أجهزة PCIe غير المصرح بها من الوصول إلى الذاكرة. فقط الأجهزة التي تحتوي على برامج تشغيل متوافقة مع DMA Remapping قادرة على ذلك، ومرة أخرى، تتم حماية ميزة برنامج التشغيل هذه كجزء من فرض توقيع Microsoft. بالجمع بين هذا و Secure Boot، الذي يمنع البرامج الضارة في وقت التمهيد أو أدوات تحميل الغش من إدخال نفسها قبل بدء تشغيل Windows، وإثبات التمهيد المستند إلى TPM، وما لديك هو بيئة آمنة إلى حد كبير، مع الأخذ في الاعتبار أنه جهاز كمبيوتر يتحكم فيه المستخدم.
هذه التقنية ليست فريدة لعمليات الغش في الألعاب أيضًا. هناك العديد من الأمثلة لبرامج الفدية التي أساءت استخدام برامج التشغيل لتعطيل ميزات أمان النظام وتحميل التعليمات البرمجية الضارة في kernel، مما أدى بشكل أساسي إلى تحويل سطح الهجوم من نظام التشغيل إلى التعليمات البرمجية منخفضة المستوى التي فحصتها Microsoft ووقعتها. يحتاج مطورو البرامج الضارة إلى الاستفادة من برنامج تشغيل موجود مثبت بالفعل على جهاز المستخدم، مما يعني إما العثور على ثغرة أمنية في برنامج تشغيل شائع للغاية أو خداع المستخدم لتثبيت برنامج به الثغرة الأمنية.
إن فرض توقيع برنامج التشغيل ليس سوى ترس في بنية أمان شاملة، وبمفرده، لا يكفي لإيقاف كل شيء. ومع ذلك، إلى جانب هذه التقنيات الأخرى التي تستخدمها Microsoft أيضًا، لا يمكن إنكار أنها ترفع المستوى بشكل كبير. ستعمل الشهادة المسروقة على وقت مستعار قبل اكتشافها وإلغائها، وغالبًا ما تكون الحلول البديلة للأجهزة عابرة أيضًا.
لماذا يُعتبر فرض توقيع برنامج التشغيل إجراءً مناهضًا للمستهلك؟
فرض توقيع برنامج التشغيل، أو ما يُعرف بـ Driver Signature Enforcement، هو إجراء أمني تتبعه أنظمة تشغيل مثل Windows للتأكد من أن برامج التشغيل (Drivers) التي يتم تثبيتها على النظام موثوقة ولم يتم التلاعب بها.
لكن، لماذا يرى البعض أن هذا الإجراء “مناهض للمستهلك”؟
يكمن الجواب في عدة نقاط:
- تقييد حرية الاختيار: قد يمنع فرض التوقيع المستخدمين من تثبيت برامج تشغيل معينة، حتى لو كانوا يثقون بها، وذلك لأنها لم تحصل على توقيع رقمي معتمد من Microsoft أو جهة أخرى معترف بها. هذا يقيد حرية المستخدم في اختيار الأجهزة والبرامج التي يرغب في استخدامها.
- صعوبة دعم الأجهزة القديمة: غالبًا ما تتوقف الشركات المصنعة عن تحديث برامج التشغيل للأجهزة القديمة. إذا لم يتم توقيع برنامج التشغيل الخاص بجهاز قديم، فقد لا يتمكن المستخدمون من استخدامه على أنظمة التشغيل الحديثة التي تفرض توقيع برنامج التشغيل. هذا يجبر المستخدمين على شراء أجهزة جديدة حتى لو كانت أجهزتهم القديمة لا تزال تعمل بشكل جيد.
- تكلفة الحصول على التوقيع: قد يكون الحصول على توقيع رقمي مكلفًا، خاصة بالنسبة للمطورين المستقلين أو الشركات الصغيرة. هذا قد يثبط الابتكار ويمنع تطوير برامج تشغيل جديدة للأجهزة المتخصصة أو النادرة.
- مشاكل التوافق: في بعض الأحيان، قد تتسبب برامج التشغيل الموقعة في حدوث مشاكل في التوافق مع أجهزة أو برامج أخرى. قد يكون من الصعب على المستخدمين تحديد سبب هذه المشاكل وإصلاحها، خاصة إذا لم يكونوا خبراء في مجال تكنولوجيا المعلومات.
- احتكار الشركات الكبيرة: يُعتقد أن فرض توقيع برنامج التشغيل يمنح الشركات الكبيرة ميزة غير عادلة على الشركات الصغيرة والمطورين المستقلين. الشركات الكبيرة لديها الموارد اللازمة للحصول على التوقيعات الرقمية بسهولة، بينما قد يجد المطورون المستقلون صعوبة في ذلك.
باختصار، على الرغم من أن فرض توقيع برنامج التشغيل يهدف إلى تحسين الأمان، إلا أنه قد يكون له آثار سلبية على المستهلكين من خلال تقييد حرية الاختيار، وصعوبة دعم الأجهزة القديمة، وزيادة التكاليف، والتسبب في مشاكل التوافق، وتعزيز احتكار الشركات الكبيرة.
لذلك، يجب الموازنة بين الفوائد الأمنية لفرض توقيع برنامج التشغيل وتأثيراته السلبية على المستهلكين والابتكار.
الأمر يتعلق بما يمكنك وما لا يمكنك تشغيله على جهازك الخاص
إذا كان توقيع برنامج التشغيل مفيدًا جدًا للأمان، فما الذي يجعله مناهضًا للمستهلك؟ يأتي الانتقاد من حقيقة أن آلية الأمان هذه تقيد بشكل كبير حرية المستخدم والتحكم في نظامه الخاص. هناك مقايضة ضمنية بين الأمن والانفتاح، وتعتمد Microsoft بشدة على الجانب الأول بدلاً من الأخير. اختارت الشركة نموذجًا يثق فيه نظام التشغيل فقط بالتعليمات البرمجية منخفضة المستوى التي تم فحصها بواسطة Microsoft، مما يؤدي بشكل أساسي إلى مركزية السلطة بطريقة تتماشى أيضًا مع مصالح الصناعة وتجني الأموال من الشهادات أيضًا.
بالعودة إلى تعطيل التحقق من توقيع برنامج التشغيل، فإن تطوير برنامج تشغيل مخصص خاص بك للاستخدام الشخصي، سواء كان ذلك للأجهزة الخاصة بك أو لجهاز تملكه، يمثل إزعاجًا. ستحتاج إما إلى التمهيد باستخدام خيار بدء التشغيل “Disable Driver Signature Enforcement”، وتعطيل فحوصات السلامة تمامًا، أو تمكين وضع اختبار التوقيع في Windows، وكلاهما ليس مناسبًا بشكل خاص للاستخدام. أنت لا تمتلك جهاز الكمبيوتر الخاص بك بنفس الطريقة التي تعني بها “الملكية” عادةً؛ على مستوى kernel، تحتفظ Microsoft بالسيطرة.
بالإضافة إلى ذلك، يمكن فقط للشركات الكبيرة أو المطورين ذوي الموارد الجيدة تلبية متطلبات توقيع برنامج التشغيل بسهولة. للحصول على برنامج تشغيل موقع بشكل صحيح لإصدار Windows حديث، يجب على المطور الحصول على شهادة توقيع التعليمات البرمجية EV، والتي تتطلب التحقق الدقيق من الهوية ورمز الأجهزة، مع دفع عدة مئات من الدولارات سنويًا مقابل ذلك أيضًا. Notepad++ هو مثال شهير على هذه المشكلة المتعلقة بتوقيع التعليمات البرمجية، والتي ترى برنامجًا على مستوى المستخدم يتأثر بالرفض دفع رسوم سنوية لـ Microsoft مقابل الشهادة. ينطبق المفهوم نفسه على برامج التشغيل أيضًا.
ومع ذلك، يمكن أن يمنع هذا الشرط أيضًا المستهلكين العاديين من استخدام الأجهزة القديمة التي لم تتلق مطلقًا تحديثًا لبرنامج التشغيل الموقع. لنفترض أن لديك جهازًا طرفيًا قديمًا للكمبيوتر الشخصي تريد توصيله بجهاز كمبيوتر يعمل بنظام Windows 11؛ إذا كان برنامج التشغيل الخاص به من عصر Windows XP ولم يكن لديه توقيع رقمي مطلقًا، فسيتم حظره تمامًا. يمكنك تعطيل فرض التوقيع (مع كل المشكلات التي يجلبها) أو التخلي عن الجهاز. على الرغم من أنه كان بإمكانك تعديل برنامج التشغيل في الماضي، إلا أن حلول DIY غير مسموع بها إلى حد كبير هذه الأيام، نظرًا للتكلفة المرتبطة بها وتعقيدها.
في الواقع، حتى عندما يأخذ أفراد المجتمع الأمور بأيديهم، يمكن أن تأتي بنتائج عكسية بسرعة. هناك برنامجا تشغيل معروفان يمكن للمطورين استخدامهما للتحكم في مراوح النظام في تطبيقاتهم الخاصة: InpOut32 و WinRing0. يتعارض الأول مع Vanguard الخاص بـ Riot، لذلك اختار الكثيرون الأخير، وكان العمود الفقري لأدوات مثل Fan Control. ومع ذلك، تم اكتشاف ذلك في عام 2020 كان لدى WinRing0 ثغرة أمنية كبيرة أدت إلى الإبلاغ عنها وحظرها بواسطة Windows Defender بعد بضع سنوات، مما أدى إلى توقف التطبيقات التي تعتمد عليها في الماء.
تتفاقم هذه المشكلة بسبب مشكلة التكلفة عندما يتعلق الأمر بتطوير وصيانة برنامج تشغيل صالح تقبله Microsoft. إليك مقتطف من مقال في The Verge الذي يوضح المشكلة:
يوضح تيموثي صن، مؤسس SignalRGB، أن المخاطر الأمنية أكثر تعقيدًا. ويقول: “نظرًا لأن WinRing0 يتم تثبيته على مستوى النظام بأكمله، فقد أدركنا أننا نعتمد على الإصدار الأول المثبت على نظام المستخدم. وهذا جعل من الصعب للغاية التحقق مما إذا كانت التطبيقات الأخرى قد قامت بتثبيت إصدارات قد تكون عرضة للخطر، مما يعرض مستخدمينا للخطر على الرغم من جهودنا”.
لهذا السبب استثمرت شركته في واجهة RGB الخاصة بها بدلاً من ذلك، وتخلت في النهاية عن WinRing0 في عام 2023 لصالح برنامج تشغيل SMBus خاص. لكن المطورين الذين تحدثت إليهم، بمن فيهم صن، يوافقون على أن هذا اقتراح مكلف.
يقول صن: “لن ألطف الأمر – كانت عملية التطوير صعبة وتطلبت موارد هندسية كبيرة”. ويقول [آدم] هونسي من OpenRGB: “المشاريع الصغيرة مفتوحة المصدر لا تملك القدرة المالية على سلوك هذا الطريق، ولا الخبرة المتخصصة في تطوير kernel الخاص بـ Microsoft للقيام بذلك”.
يبدو أن مطور WingRing0، OpenLibSys، غير نشط هذه الأيام، ومن غير المرجح أن تتم الموافقة على نفس برنامج التشغيل، إذا تم تحديثه، من قبل Microsoft للتوقيع بموجب إرشادات الشركة الأكثر صرامة. كانت Microsoft تعلم أيضًا عدد التطبيقات التي تعتمد عليه (Razer Synapse و SteelSeries Engine، وغيرها الكثير استخدمته أيضًا)، مما منحه بضع سنوات أخرى من العمر قبل إلغائه في عام 2025.
ماذا عن نظام Linux؟
على الرغم من أن نظام التشغيل Linux ليس شائعًا مثل نظامي التشغيل Windows و macOS، إلا أنه يظل خيارًا قويًا وموثوقًا به، خاصة للمطورين ومحترفي تكنولوجيا المعلومات. يتميز Linux بمرونته العالية وقابليته للتخصيص، مما يجعله مثاليًا للمستخدمين الذين يبحثون عن تحكم كامل في نظام التشغيل الخاص بهم. بالإضافة إلى ذلك، يعتبر Linux نظامًا آمنًا ومستقرًا، وغالبًا ما يكون أقل عرضة للبرامج الضارة والفيروسات مقارنة بأنظمة التشغيل الأخرى.
إذا كنت تفكر في استخدام Linux، فمن المهم أن تدرك أن هناك العديد من التوزيعات المختلفة المتاحة، مثل Ubuntu و Fedora و Debian. تتميز كل توزيعة بمجموعة فريدة من الميزات والأدوات، لذلك من المهم اختيار التوزيعة التي تناسب احتياجاتك ومتطلباتك. على سبيل المثال، يعتبر Ubuntu خيارًا شائعًا للمبتدئين نظرًا لسهولة استخدامه وتوافره على نطاق واسع، بينما يعتبر Fedora خيارًا جيدًا للمستخدمين الذين يرغبون في تجربة أحدث التقنيات.
بشكل عام، يعتبر Linux نظام تشغيل ممتازًا يوفر العديد من المزايا مقارنة بأنظمة التشغيل الأخرى. ومع ذلك، قد يكون تعلم استخدامه أمرًا صعبًا بعض الشيء في البداية، خاصة إذا كنت معتادًا على استخدام Windows أو macOS. إذا كنت على استعداد لبذل بعض الجهد، فستجد أن Linux نظام تشغيل قوي وموثوق به يمكنه تلبية احتياجاتك.
روح مختلفة تمامًا
على عكس نظام التشغيل Windows، يعتبر Linux نظامًا مفتوح المصدر: لا توجد سلطة مركزية واحدة تملي ما يمكن تشغيله في النواة. تتمتع توزيعات Linux بالقدرة على فرض توقيع الوحدة النمطية (خاصةً إذا كان Secure Boot ممكّنًا، تتطلب بعض التوزيعات توقيع وحدات kernel بمفتاح)، ولكن في النهاية، يمكن للمستخدم إعادة تجميع النواة أو تعطيل هذه الفحوصات. هذا هو أحد الأسباب العديدة التي تجعل برامج مكافحة الغش لا يمكن نشرها على Linux بنفس الطريقة التي يمكن أن تكون عليها في Windows.
في Linux، يعتبر الغشاش الذي لديه حق الوصول إلى مستوى الجذر كلي القدرة. يمكنهم إعادة تجميع النواة لإزالة خطافات مكافحة الغش، أو تحميل وحدة kernel الخاصة بهم دون سلطة توقيع مركزية لإيقافهم، وبالنظر إلى أن العديد من الغشاشين قاموا ببساطة بتشغيل عمليات الغش كجذر في الدليل /root كطريقة كافية لتجنب الاكتشاف، يمكنك أن ترى لماذا مطوري الألعاب ليسوا حريصين جدًا على نقل برنامج مكافحة الغش الخاص بهم إلى Linux. حتى إذا أصرت إحدى الألعاب على الوصول إلى الجذر (والذي سيكون أسوأ من مجرد مكافئ مكافحة الغش على Windows)، فيمكنك تشغيلها في بيئة “fakeroot” بحيث تعتقد اللعبة أن لديها حق الوصول إلى الجذر عندما لا يكون الأمر كذلك.
كل هذا يعني أن الطبيعة المفتوحة لنظام Linux تعني أنه يمكن مواجهة أي إجراء دفاعي بهجوم يتمتع بامتيازات مماثلة، وينعكس هذا الواقع في الحالة الحالية لألعاب Linux. في حين أن العديد من العناوين الشائعة قابلة للتشغيل على Linux (غالبًا ما تعمل بشكل أفضل مما كانت عليه في Windows)، فإن العديد من الألعاب التنافسية ترفض تمامًا التشغيل على Linux نتيجة لذلك. تنطبق هذه المفاهيم نفسها على البرامج الضارة أيضًا، على الرغم من أن المشهد على Linux عندما يتعلق الأمر بالبرامج الضارة مختلف تمامًا.
يعتبر فرض توقيع برنامج التشغيل من Microsoft جذابًا للشركات. من خلال تأمين النواة، يتيح Windows مستوى من الأمان والتحكم (لمكافحة الغش والبرامج الضارة والمزيد) لا يمكن تحقيقه ببساطة على نظام أكثر انفتاحًا بدون هذه القيود. بالنسبة للعديد من اللاعبين والشركات، غالبًا ما تكون هذه المقايضة تستحق العناء، حتى لو كانت تحبط شريحة من المستخدمين. يتمتع مستخدمو Linux بتحكم لا مثيل له، ولكن هذه الحرية بالذات تعني أن أي آلية لمكافحة الغش من جانب العميل عادة ما تكون غير مجدية. للحصول على المزايا الأمنية التي يتمتع بها Windows في هذا المجال على جهاز Linux، ستعيد إنشاء نفس القيود التي جعلتك ترغب في ترك Windows في المقام الأول.
أما بالنسبة لسبب بقاء مستخدمي Linux آمنين، على الرغم من عدم وجود سلطة شهادات مركزية؟ توجد الإجابة عبر عدد لا يحصى من الأسباب. بين نظام أذونات المستخدم المتقدم في Linux، ومجتمع مفتوح المصدر يقوم بسرعة بتصحيح الثغرات الأمنية عند ظهورها (حتى عندما تتسرب بعض الثغرات الرئيسية، مثل xz-utils)، وحصته السوقية المنخفضة مما يجعله هدفًا أقل إثارة للاهتمام، وحزم البرامج التي يتم تثبيتها إلى حد كبير من خلال مستودعات تم فحصها، فإنه ليس جذابًا مثل استهداف مستخدم Windows بدلاً من ذلك.
الحرية والأمن: معادلة صعبة التحقيق دائمًا
غالبًا ما يُطرح السؤال: هل يمكن تحقيق التوازن بين الحرية والأمن؟ الإجابة ليست بسيطة، فالواقع يفرض علينا الاعتراف بأن تحقيق أقصى درجات الحرية قد يتعارض أحيانًا مع ضمان أقصى درجات الأمن، والعكس صحيح.
إن مفهوم الحرية يشمل جوانب عديدة، منها حرية التعبير، وحرية التنقل، وحرية الاعتقاد. لكن هذه الحريات، إذا أُطلقت بلا قيود، قد تُستغل من قبل أفراد أو جماعات لتهديد أمن المجتمع واستقراره. على سبيل المثال، حرية التعبير، وإن كانت حقًا أساسيًا، يمكن أن تتحول إلى وسيلة لنشر الكراهية والعنف، أو لترويج معلومات مضللة تقوض الثقة في المؤسسات.
من ناحية أخرى، قد تؤدي التدابير الأمنية المشددة، مثل المراقبة المكثفة، وتقييد حركة الأفراد، وفرض قيود على الوصول إلى المعلومات، إلى تقويض الحريات الشخصية وتقويض أسس المجتمع الديمقراطي. إن المبالغة في التركيز على الأمن قد تخلق بيئة من الخوف والرقابة الذاتية، حيث يتردد الأفراد في التعبير عن آرائهم أو ممارسة حقوقهم خوفًا من الملاحقة.
إذًا، كيف يمكننا إيجاد التوازن الأمثل بين الحرية والأمن؟ يكمن الحل في وضع ضوابط ومعايير واضحة تحدد نطاق الحريات وتضمن عدم إساءة استخدامها لتهديد الأمن. يجب أن تكون هذه الضوابط متناسبة مع حجم التهديد وأن تخضع للمراجعة الدورية لضمان عدم تجاوزها للضرورة.
بالإضافة إلى ذلك، يجب أن يكون هناك شفافية ومساءلة في تطبيق التدابير الأمنية. يجب أن يكون الأفراد على علم بحقوقهم وأن يكون لديهم الحق في الطعن في أي إجراءات يرون أنها تنتهك حرياتهم. كما يجب أن تكون هناك آليات رقابية مستقلة تضمن عدم إساءة استخدام السلطة باسم الأمن.
باختصار، إن العلاقة بين الحرية والأمن هي علاقة معقدة وديناميكية. لا يمكن تحقيق أي منهما على حساب الآخر بشكل كامل. يتطلب تحقيق التوازن بينهما حوارًا مستمرًا وتوافقًا مجتمعيًا على القيم والمبادئ التي توجهنا. يجب أن نتذكر دائمًا أن الحرية والأمن ليسا هدفين متعارضين، بل هما عنصران أساسيان لمجتمع مزدهر ومستقر.
الاختلافات الجوهرية بين Linux و Windows
لا شك أن سياسة توقيع برنامج التشغيل (Driver Signature) التي تتبعها Microsoft فعالة للغاية من الناحية الأمنية. فمن خلال اشتراط توقيع جميع برامج تشغيل Kernel والتحقق منها، تمكنت Microsoft من بناء أحد أقوى أنظمة التشغيل الاستهلاكية دفاعًا ضد البرامج الضارة والأدوات الاحتيالية منخفضة المستوى. يتميز Windows، كنظام أساسي، بقدرته الفريدة على الحفاظ على نظام تشغيل موثوق به يمكن للمستخدمين والبرامج الوثوق به. وهذا هو السبب في كونها واحدة من أفضل الميزات الأمنية، لأنها تعمل بشكل جيد حقًا وأحدثت فرقًا كبيرًا في حماية الأنظمة.
إلا أن هذا الأمان يأتي على حساب المستهلكين. فهو يسلب التحكم ويسلمه إلى سلطة مركزية، وعدم القدرة على التحكم الكامل في ما يفعله نظام التشغيل الخاص بك لا يروق للكثيرين ممن يقدرون الحوسبة المفتوحة. بمعنى ما، يتعامل Windows 11 مع المستخدم كشخص غير موثوق به عندما يتعلق الأمر برمز Kernel، على افتراض أن أي شخص (بما في ذلك أنت) يمكن أن يفعل شيئًا ضارًا إذا لم يتم منعه.
من وجهة نظر أمنية، تعتبر هذه الميزة بالذات مثالًا رائعًا على تقليل المخاطر. فهي تغلق بشكل كبير أحد أخطر سبل الهجوم، ولكن من وجهة نظر حقوق المستهلك، قد يبدو الأمر وكأننا ببساطة نستأجر وظائف لاستخدام أجهزتنا الخاصة، لأننا رهن بما تسمح به Microsoft وما لا تسمح به. ماذا لو تم توسيع هذا المفهوم ليشمل “حماية” نظام التشغيل؟ ماذا لو كانت أدوات وبرامج إزالة الانتفاخات (Debloating) تجري تعديلات لا ترضى عنها Microsoft، لأنها تعدل النظام؟
بالنسبة للمستخدم العادي، يعد فرض توقيعات برنامج التشغيل خطوة رائعة. لا شك في ذلك. ومع ذلك، ليس من الجيد أن يتم استبعاد مطوري البرامج مفتوحة المصدر من النظام الأساسي بسبب التكاليف المرتبطة بتطوير برامجهم الخاصة ومشاركتها مع الآخرين، ولا يبدو الأمر رائعًا أن أشعر وكأنني لا أمتلك حقًا أجهزتي، طالما أن Windows هو الطريقة الأساسية التي أتفاعل بها معها.