تتحكم سياسة أمن قرص بدء التشغيل في أجهزة كمبيوتر Mac المزودة بسيليكون Apple
نظرة عامة
على عكس سياسات الأمن على أجهزة كمبيوتر Mac المستندة إلى Intel، فإن سياسات الأمن على أجهزة كمبيوتر Mac المزودة بسيليكون Apple تناسب كل نظام تشغيل مثبت. وهذا يعني أن العديد من مثيلات macOS المثبتة التي لها إصدارات وسياسات أمن مختلفة تكون مدعومة على Mac ذاته. ولهذا السبب، تمت إضافة منتقي نظام التشغيل إلى أداة أمن بدء التشغيل.
في أجهزة كمبيوتر Mac المزودة بسيليكون Apple، تشير أداة أمن النظام إلى حالة الأمن الكلية التي تم تكوينها بواسطة المستخدم لنظام macOS مثل تمهيد kext أو تكوين حماية تكامل النظام (SIP). إذا كان تغيير إعدادات الأمن سيؤدي إلى تدهور الحالة الأمنية بشكل كبير أو تسهيل اختراق النظام، يجب على المستخدم الدخول إلى وضع recoveryOS من خلال الضغط مطولاً على زر الطاقة (حتى لا تتمكن البرامج الضارة من تشغيل الإشارة، بحيث تقتصر إمكانية تنفيذ ذلك على التدخل البشري المادي فقط)، لإجراء التغيير. ولهذا السبب، فإن أي Mac مزود بسيليكون Apple لن يشترط (أو يدعم) وجود كلمة سر خاصة بالبرنامج الثابت أيضًا، فكل التغييرات المهمة يتم تمريرها بالفعل من خلال تفويض المستخدم. لمزيد من المعلومات حول SIP، انظر حماية تكامل النظام.
يمكن تعيين التأمين الكامل والتأمين المنخفض باستخدام أداة أمن بدء التشغيل من recoveryOS. ولكن التأمين الأقل تقييدًا لا يمكن الوصول إليه إلا من خلال أدوات سطر الأوامر للمستخدمين الذين يقبلون مخاطر جعل الـ Mac الخاص بهم أقل تأمينًا.
سياسة التأمين الكامل
"تأمين كامل" هو الإعداد الافتراضي، ويتصرف مثل iOS و iPadOS. في الوقت الذي يتم فيه تنزيل البرنامج وإعداده للتثبيت، بدلاً من استخدام التوقيع العام الذي يتوفر مع البرنامج، يتواصل macOS مع نفس خادم توقيع Apple المستخدم في iOS و iPadOS ويطلب توقيعًا جديدًا "بطابع شخصي". يتم تخصيص توقيع عندما يتضمن معرف الشريحة الحصري (ECID) -وهو معرف فريد خاص بوحدة المعالجة المركزية من Apple في هذه الحالة- كجزء من طلب التوقيع. ويكون التوقيع الذي يرجع من خادم التوقيع فريدًا وقابلاً للاستخدام فقط بواسطة وحدة المعالجة المركزية من Apple المعينة هذه. عندما تكون سياسة التأمين الكامل سارية المفعول، يضمن Boot ROM و LLB أن لا يكون التوقيع المحدد موقعًا من قِبل Apple فحسب، بل تم توقيعه لهذا الـ Mac بالتحديد، ويربط هذا الإصدار من macOS بشكل أساسي مع ذلك الـ Mac.
يوفر استخدام خادم توقيع على الإنترنت أيضًا حماية أفضل ضد هجمات التراجع مقارنةً بأساليب التوقيع العام النموذجية. في نظام التوقيع العام، كان من الممكن أن تتعرض الحقبة الأمنية للتراجع عدة مرات، لكن أي نظام لم يشهد أحدث البرامج الثابتة أبدًا لن يعرف ذلك. على سبيل المثال، الكمبيوتر الذي يعتقد حاليًا أنه موجود في الحقبة الأمنية 1 يقبل البرامج من الحقبة الأمنية 2، حتى إذا كانت الحقبة الأمنية الفعلية الحالية هي 5. باستخدام نظام التوقيع عبر الإنترنت من سيليكون Apple، يمكن لخادم التوقيع رفض إنشاء توقيعات إلا للبرامج الموجودة في أحدث حقبة أمنية.
بالإضافة إلى ذلك، إذا اكتشف أحد المهاجمين ثغرة أمنية بعد تغيير الحقبة الأمنية، فلن يتمكن ببساطة من انتقاء البرامج العُرضة للتهديدات من حقبة سابقة من النظام أ وتطبيقها على النظام ب لمهاجمته. حقيقة أن البرامج العرضة للتهديدات من حقبة قديمة قد تم تخصيصها للنظام أ يمنعها من أن تكون قابلة للنقل وبالتالي يمنع استخدامها لمهاجمة النظام ب. تعمل كل هذه الآليات معًا لتوفير ضمانات أقوى بكثير تمنع المهاجمين من وضع البرامج العرضة للتهديدات عن قصد على Mac للتحايل على وسائل الحماية التي توفرها أحدث البرامج. ولكن المستخدم الذي يمتلك اسم مستخدم وكلمة سر كمسؤول للـ Mac يظل بإمكانه دائمًا اختيار سياسة الأمن التي تناسب حالات الاستخدام الخاصة به.
سياسة التأمين المنخفض
يشبه سلوك التأمين المنخفض سلوك التأمين المتوسط على أجهزة كمبيوتر Mac المستندة إلى Intel المزودة بشريحة T2، حيث يقوم فيها البائع (في هذه الحالة، Apple) بإنشاء توقيع رقمي للتعليمة البرمجية لتأكيد صدورها من البائع. يساعد هذا التصميم على منع المهاجمين من إدخال تعليمات برمجية غير موقعة. تشير Apple إلى هذا التوقيع على أنه توقيع "عام"، لأنه يمكن استخدامه على أي Mac، لأي فترة زمنية، لأجهزة كمبيوتر Mac التي تم تعيين سياسة التأمين المنخفض بها حاليًا. لا يوفر التأمين المنخفض في حد ذاته الحماية من هجمات التراجع على الرغم من أن التغييرات غير المصرح بها في نظام التشغيل قد تؤدي إلى جعل الوصول إلى بيانات المستخدم غير ممكن. لمزيد من المعلومات، انظر ملحقات Kernel في أجهزة كمبيوتر Mac المزودة بسيليكون Apple.
بالإضافة إلى تمكين المستخدمين من تشغيل إصدارات أقدم من macOS، فإن التأمين المنخفض مطلوب للإجراءات الأخرى التي يمكنها تعريض أمن نظام المستخدم للخطر، مثل تقديم ملحقات kernel التابعة لجهات خارجية (kexts). تتمتع Kexts بنفس الامتيازات التي تتمتع بها kernel، وبالتالي فإن أي ثغرات أمنية في kexts التابعة لجهات خارجية يمكن أن تؤدي إلى اختراق نظام التشغيل بالكامل. وهذا هو السبب في تشجيع المطورين بشدة على اعتماد ملحقات النظام، قبل إزالة دعم kext من macOS لأجهزة كمبيوتر Mac المستقبلية المزودة بسيليكون Apple. حتى عند تمكين kexts التابعة لجهات الخارجية، فلا يمكن تحميلها في kernel عند الطلب. بدلاً من ذلك، يتم دمج kexts في مجموعة Kernel المساعدة (AuxKC) التي يتم تخزين علامة تجزئتها في LocalPolicy، ومن ثَم يتطلب ذلك إعادة تشغيل. لمزيد من المعلومات حول إنشاء AuxKC، انظر توسيع ملحق kernel بشكل آمن في macOS.
سياسة التأمين الأقل تقييدًا
التأمين الأقل تقييدًا مخصص للمستخدمين الذين يقبلون المجازفة بتعريض الـ Mac لحالة أمنية دون المستوى المفترض. ويختلف هذا النمط عن نمط "بلا تأمين" على أجهزة كمبيوتر Mac المستندة إلى Intel المزودة بشريحة T2. باستخدام التأمين الأقل تقييدًا، لا يزال التحقق من التوقيع يتم على طول سلسلة التمهيد الآمن بالكامل، ولكن يتم تعيين السياسة على إشارات أقل تقييدًا إلى iBoot بأنه يجب أن يقبل كائنات التمهيد الموقعة محليًا من قِبل Secure Enclave، مثل ذاكرة التخزين المؤقت لملحقات مجموعة Boot Kernel التي يُنشئها المستخدم ويتم تصميمها من مصدر ملحق XNU kernel مخصص. بهذه الطريقة، يوفر "التأمين الأقل تقييدًا" أيضًا قدرة معمارية لتشغيل kernel عشوائي "غير موثوق به مطلقًا على نظام التشغيل". عند تحميل مجموعة Boot Kernel مخصصة أو نظام تشغيل غير موثوق به بالكامل على النظام، تصبح بعض مفاتيح فك التشفير غير متاحة. وقد تم تصميم ذلك لمنع أنظمة التشغيل غير الموثوق بها تمامًا من الوصول إلى البيانات من أنظمة التشغيل الموثوق بها.
هام: لا توفر Apple ملحقات XNU المخصصة أو تدعمها.
هناك طريقة أخرى تختلف بها سياسة "التأمين الأقل تقييدًا" عن سياسية "بلا تأمين" على أجهزة كمبيوتر Mac المستندة إلى Intel المزودة بشريحة T2: لقد صارت شرطًا أساسيًا لبعض التراجعات الأمنية التي كانت في الماضي يمكن السيطرة عليها بشكل مستقل. والجدير بالذكر أن تعطيل حماية تكامل النظام (SIP) على أجهزة كمبيوتر Mac المزودة بسيليكون Apple يتطلب من المستخدم الإقرار بأنه يضع النظام في نمط التأمين الأقل تقييدًا. ويكون ذلك مطلوبًا لأن تعطيل SIP يؤدي دائمًا إلى وضع النظام في حالة تجعل اختراق kernel أسهل بكثير. على وجه الخصوص، يؤدي تعطيل SIP على أجهزة كمبيوتر Mac المزودة بسيليكون Apple إلى تعطيل فرض توقيع kext أثناء وقت إنشاء AuxKC، مما يسمح بتحميل أي kext عشوائي في ذاكرة kernel. تم إجراء تحسين آخر على SIP على أجهزة كمبيوتر Mac المزودة بسيليكون Apple حيث تم نقل مخزن السياسات من NVRAM إلى LocalPolicy. ومن ثم فإن تعطيل SIP يتطلب مصادقةً من قِبل مستخدم لديه حق الوصول إلى مفتاح توقيع LocalPolicy، من recoveryOS (الذي يتم الوصول إليه عن طريق الضغط مطولاً على زر الطاقة). هذا يجعل الأمر أكثر صعوبة على مهاجم البرامج فقط، أو حتى المهاجم الموجود فعليًا، لتعطيل SIP.
ليس من الممكن إرجاع مستوى الأمن إلى التأمين الأقل تقييدًا من تطبيق أداة أمن بدء التشغيل. ولا يمكن للمستخدم خفض مستوى الأمن إلا من خلال تشغيل أدوات سطر الأوامر من الوحدة الطرفية في recoveryOS، مثل csrutil
(لتعطيل SIP). بعد أن يقوم المستخدم بخفض مستوى الأمن، تنعكس حقيقة حدوث ذلك في أداة أمن بدء التشغيل، وبالتالي يمكن للمستخدم تعيين الأمان بسهولة إلى نمط أكثر أمنًا.
ملاحظة: جهاز Mac المزود بسيليكون Apple لا يتطلب أو يدعم سياسة معينة لتمهيد الوسائط لأن كل عمليات التمهيد يتم تنفيذها محليًا من الناحية الفنية. إذا اختار المستخدم الإقلاع من وسائط خارجية، فيجب أولاً تخصيص إصدار نظام التشغيل هذا باستخدام عملية إعادة تشغيل مُصادق عليها من recoveryOS. وتؤدي إعادة التشغيل هذه إلى إنشاء ملف LocalPolicy على محرك الأقراص الداخلي الذي يُستخدم لإجراء إقلاع موثوق به من نظام التشغيل المُخزَّن على الوسائط الخارجية. وهذا يعني أن تكوين بدء التشغيل من الوسائط الخارجية يتم تمكينه بشكل صريح دائمًا على أساس كل نظام تشغيل، ويتطلب بالفعل مصادقة المستخدم، لذا فلا يلزم وجود تكوين آمن إضافي.