افتح القائمة الرئيسية

عزل لائحة النواة (بالإنجليزية: Kernel page-table isolation) او KPTI هي تقنية أمنية في نواة لينكس من طرف جامعة غراتس النمساوية للتكنولوجيا لحجز جزئ من الذاكرة خاصة بالنواة و عزلها عن مساحة المستخدم ،وضيفة التقنية حماية النظام من الهجمات على عنوين النواة

تم دمجها في نواة لينكس النسخة 4.15،التي صدرت في أوائل عام 2018 و كما تم إضافتها في النسخة 4.14.11 الطويلة الدعم .

نبذةعدل

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

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

لكن في بعض الأحيان حماية العتاد لا تكفي او يظهر فيها عيوب تصنيع غير قابلة للإصلاح و يستلزم تغيير العتاد كليا. وبما أن الحماية هي في طبقة العتاد فمن الصعوبة إصلاح الثغرة

وهذا ما حدث حيث ظهرت علة في الية العزل في معالجات من شركة انتل، فيمكن تجاوز الصلاحيات ان كان الكود في نفس الصفحة و يعني ان على نظام التشغيل زرع نفسه في صفحة مختلفة عندما يرغب اي تطبيق في عمل اي شيء مثل ان يطلب من النواة فتح ملف فلا يكفي ان ينتقل البرنامج إلى صلاحيات النواة على نفس الصفحة بل يجب ان تنتقل إلى صفحة اخرى Full context/page switch وينتج منه اداء سيء جدا بنسبة 30% لكن نتجنب المشاكل الامنية

عزل لائحة النواة KPTI يقوم بتغيير بعض العناوين أو حتى جميع العناوين النواة عشوائيا لتكون غير قابلة التنبئ بمكانها في الذاكرة ويجعل الهجمات أكثر صعوبة. [1]

المراجععدل


 
هذه بذرة مقالة عن برمجيات الحاسوب بحاجة للتوسيع. شارك في تحريرها.