Key points are not available for this paper at this time.
تقسم أنظمة التشغيل عناوين الذاكرة الافتراضية إلى مساحة نواة ومساحة مستخدم. يتكون واجهة نظام التشغيل الحديث من مجموعة من إجراءات استدعاء النظام التي قد تأخذ مؤشرات كarguments تُسمى مؤشرات المستخدم. يكون من الآمن فك إشارة إلى مؤشر مستخدم إذا كان يشير فقط إلى مساحة المستخدم. إذا فكك نظام التشغيل إشارة إلى مؤشر مستخدم لا يشير إلى مساحة المستخدم، فقد تتمكن تطبيقات مستخدم خبيثة من السيطرة على نظام التشغيل، وكشف البيانات الحساسة من مساحة النواة، أو تعطيل الجهاز. نظرًا لأن نظام التشغيل لا يمكنه الوثوق بعمليات المستخدم، يجب على نظام التشغيل التحقق من أن مؤشر المستخدم يشير إلى مساحة المستخدم قبل فك إشارته. في هذه الورقة، نقدم تحليلًا ثابتًا قابلًا للتوسع وبدقة قادرًا على التحقق من عدم وجود مؤشرات مستخدم غير مُراقبة. نقوم بتقييم تنفيذ تحليلنا على نظام تشغيل لينوكس بالكامل مع أكثر من 6.2 مليون سطر من التعليمات البرمجية، مع الإبلاغ عن إنذارات كاذبة فقط في 0.05% من مواقع فك الإشارة.
درس Bugrara وآخرون (الخميس) هذا السؤال.