الانتقال إلى المحتوى

OS Guard وSMEP

مرجع المعماريةFeex

تُسمى أيضاً OS Guard

ترتبط Intel OS Guard بميزة Supervisor-Mode Execution Prevention، أو SMEP. تفرض هذه الميزة قيوداً على تنفيذ المشرف لصفحات الكود التي يمكن للمستخدم الوصول إليها، ويجب عدم الخلط بينها وبين حماية الوصول إلى البيانات المنفصلة SMAP.

ما تحتاج إلى معرفته

ترتبط Intel OS Guard بميزة Supervisor-Mode Execution Prevention، أو SMEP. تفرض هذه الميزة قيوداً على تنفيذ المشرف لصفحات الكود التي يمكن للمستخدم الوصول إليها، ويجب عدم الخلط بينها وبين حماية الوصول إلى البيانات المنفصلة SMAP.

كيف يعمل

عندما يُمكّن نظام التشغيل SMEP، يتم فحص عمليات جلب التعليمات في نمط المشرف مقابل أذونات المستخدم/المشرف في جدول الصفحات. يساعد هذا في منع خطأ في تدفق التحكم في النواة من تنفيذ كود محدد على أنه متاح للمستخدم مباشرة. يظل نظام التشغيل متحكماً في تعيينات الصفحات والكود ذي الامتيازات الخاص به.

مواضع فائدتها

يمكن للنواة التي تعيد توجيه التنفيذ بطريق الخطأ إلى صفحة مستخدم أن تُواجه خطأً في ظل تمكين SMEP. يُعد هذا حداً تنفيذياً محدداً؛ فهو لا يتحقق بشكل مستقل من منطق النواة، أو برامج التشغيل المحملة، أو تعيينات المشرف المسموح بها.

كيفية التحقق من الدعم والتمكين

تُسرد البتة 7 من CPUID.07H.00H:EBX ميزة SMEP؛ بينما CR4.SMEP هو عنصر تحكم نظام التشغيل. تمتلك SMAP بتة منفصلة وعنصر تحكم منفصل. تحقق من تكوين الحماية الموثق لنظام التشغيل قيد التشغيل بدلاً من محاولة تغيير عناصر التحكم ذات الامتيازات من تطبيق.

يجب التحقق من القدرة والتمكين وفرض السياسة كل على حدة. يمكن للمعالج أن يدعم حماية معينة بينما لا يفعّلها نظام التشغيل أو التطبيق أو سياسة الآلة الافتراضية. ولا يُعد حقل الدعم في قاعدة البيانات إثباتًا على حالة نظام قيد التشغيل.

ما لا تثبته هذه الميزة

ليست OS Guard هي Boot Guard. دمج حقل في قاعدة البيانات يقرأ OS Guard (SMAP) يخلط بين مفهومين معماريين مختلفين ولا يمكنه إثبات كليهما؛ تحقق من SMEP و SMAP بشكل مستقل. لا تجعل هذه الميزة برنامج التشغيل المعرض للخطر آمناً.

التوافق والأداء في الممارسة العملية

حافظ على تحديث نظام التشغيل والبرامج الثابتة وبيئة التشغيل المعنية. وإذا تسببت إحدى ميزات الحماية في مشكلة توافق، فاستخدم أولاً أدوات تشخيص الشركة المصنعة وتحديثاتها المدعومة. إن التبديل الشامل للحماية يمكن أن يؤثر على تطبيقات غير معنية، ويجب أن يتبع سياسة نشر واسترداد واضحة.

قائمة عملية للتحقق

  1. سجل الطراز الدقيق للمعالج أو المنصة، بالإضافة إلى إصدارات التطبيق ونظام التشغيل وبيئة التشغيل المعنية. واحتفظ بنص الخطأ الفعلي أو المتطلب كما هو.
  2. راجع مرجع الشركة المصنعة لذلك الطراز بدقة، ثم افحص القدرة الفعلية وحالة التمكين في البيئة التي يعمل فيها البرنامج.
  3. قارن كل متطلب من متطلبات الملف الثنائي أو الواجهة الخلفية المحددة. فوجود ميزة ذات اسم مشابه أو اسم بديل أو تصنيف تقني عام ليس كافيًا.
  4. تأكد من أن التطبيق قد اختار التنفيذ المطلوب. واستخدم وسائله التشخيصية الموثقة والبديل الاحتياطي المدعوم عندما لا يتم استيفاء المتطلبات.
  5. قم بإجراء تغيير مدعوم واحد في كل مرة وأعد تنفيذ نفس حمل العمل. واحتفظ بالتهيئة الأصلية ومسار الاسترداد متاحين.

إذا كانت الميزة مدرجة ولكن يتعذر على البرنامج استخدامها

ابدأ بالمكون الفعلي الذي حدث فيه الفشل. تصف قاعدة بيانات الأجهزة القدرات المسجلة؛ ولكن يمكن لنظام التشغيل أو برنامج المراقبة الفوقي (hypervisor) إتاحة بيئة فعلية مختلفة. ويتطلب خطأ التعليمة غير الصالحة (illegal-instruction) أيضًا فحص التعليمة المتسببة في الخطأ وبنية الملف الثنائي، لأن التلف أو وجود تعليمة غير مدعومة لا صلة لها بالأمر قد يُحدث أعراضًا مماثلة.

ثبت إصدار التطبيق أو برنامج التشغيل أو بيئة التشغيل المدعومة للمنصة المعنية بدقة، واستخدم البنية الأساسية أو الاحتياطية الموثقة من الشركة المصنعة عند الحاجة. لا يمكن للتحديث البرمجي إنشاء تعليمة يفتقر إليها المعالج. ويجب أن تتبع تغييرات البرامج الثابتة وسياسات الأمان إجراءات الشركة المصنعة للنظام وخطة استرداد، بدلاً من اتباع وصفة تحسين عامة.

مصادر ونطاق هذا التوضيح

Intel 64 and IA-32 Architectures Software Developer's Manual · ميزات أمان Intel المتعلقة بهجمات التنفيذ العابر

تحدد هذه المراجع السلوك المعماري ومتطلبات البرمجيات. وهي لا تتحقق بشكل مستقل من قيمة كل ميزة على صفحة طراز عتاد مرتبطة. للحصول على دعم الطراز، استخدم أدلة الشركة المصنعة في تلك الصفحة وتحقق من تهيئة النظام الفعلية. لا تقدم هذه المقالة مقياس أداء أو شهادة اعتماد أو تاريخ مراجعة مستقلة.

المصادر والتحقق

الملكية التحريرية: Feex. لم يتم تسجيل تاريخ مراجعة مستقلة. كيف نقوم بالبحث.

هل كانت هذه المقالة مفيدة؟

يكفي الإجابة بنعم أو لا. اختر سببًا إذا أردت، أو أضف ملاحظة قصيرة.

هل كانت هذه المقالة مفيدة؟