وفقًا لباحثي معهد ماساتشوستس للتكنولوجيا ، فإن معالجات Apple M1 لها عيب جديد لا يمكن تصحيحه. تم إثبات هجوم جديد للأجهزة يُعرف باسم PACMAN ضد شرائح معالجات Apple M1 ، مما يمنح جهة فاعلة ضارة القدرة على تنفيذ تعليمات برمجية عشوائية على أنظمة macOS.

في دراسة جديدة ، وصف باحثو معهد ماساتشوستس للتكنولوجيا جوزيف رافيتشاندران ، وويون تايك نا ، وجاي لانغ ، ومينغجيا يان كيف استخدموا “هجمات التنفيذ التخمينية للتغلب على آلية حماية الذاكرة الرئيسية ، ARM Pointer Authentication ، وهي ميزة أمان مصممة لضمان سلامة المؤشر . ”

ما هو أكثر من ذلك ، “على الرغم من أن تقنيات الأجهزة المستخدمة من قبل PACMAN لا يمكن معالجتها بميزات البرامج ،” صرح الباحثون ، “قد تكون عيوب تلف الذاكرة.”

ينبع الخلل من رموز مصادقة المؤشر (PACs) ، وهي عبارة عن خط حماية تم إنشاؤه في بنية arm64e لاكتشاف التغييرات غير المتوقعة للمؤشرات (الكائنات التي تخزن عنوان الذاكرة) في الذاكرة والحماية منها.

غالبًا ما يتم استغلال الثغرات الأمنية لتلف الذاكرة ، على سبيل المثال ، عن طريق الكتابة فوق بيانات التحكم في الذاكرة (أي المؤشرات) لتحويل تنفيذ التعليمات البرمجية إلى عنوان عشوائي يتحكم فيه المهاجم.

بينما تم تطوير تقنيات مثل عشوائية تخطيط مساحة العنوان (ASLR) لجعل هجمات تجاوز سعة المخزن المؤقت أكثر صعوبة ، فإن الهدف من PACs هو تحديد “صلاحية المؤشرات ذات الحد الأدنى من الحجم وتأثير الأداء” ، مما يمنع الخصم بشكل فعال من إنشاء مؤشرات صالحة لاستخدامها في استغلال.

يتم تحقيق ذلك عن طريق تأمين تكامل المؤشر باستخدام تجزئة تشفير تسمى رمز مصادقة المؤشر (PAC). تشرح شركة Apple PACs بالطريقة التالية:

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

PACMAN ، من ناحية أخرى ، “يزيل الحاجز الأساسي لشن هجمات اختطاف التحكم في التدفق على منصة مؤمنة بمصادقة المؤشر.” للالتفاف على الإجراء الأمني ​​، فإنه يستخدم تلف الذاكرة والتنفيذ التخميني ، مما يؤدي إلى تسريب “نتائج التحقق من PAC عبر القنوات الجانبية المعمارية الصغيرة دون التسبب في أي أعطال.”

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

يعمل منع التعطل لأن كل قيمة PAC يتم تخمينها بشكل تخميني عبر هجوم Prime + Probe على قناة جانبية قائمة على التوقيت عبر المخزن المؤقت للترجمة (TLB).

يتم تسليح التنفيذ خارج الطلب ، والذي يتم استخدامه لتعزيز الكفاءة في المعالجات الدقيقة الحالية من خلال عرض المسار الأكثر احتمالية لتدفق تنفيذ البرنامج ، من خلال عيوب التنفيذ التخميني ، كما هو موضح في حالة Specter و Meltdown.

من الجدير بالذكر ، مع ذلك ، أن نموذج التهديد يفترض أن برنامج الضحية (kernel) لديه بالفعل ثغرة أمنية قابلة للاستغلال لفساد الذاكرة ، مما يسمح للمهاجم غير المتميز (برنامج ضار) بحقن شفرة خادعة في مواقع ذاكرة معينة في عملية الضحية.

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

اذا وجدت هذه المقالة مثيرة للاهتمام؟ تابعً على Facebook لقراءة المزيد من المحتوى الحصري الذي ننشره. وفقًا لباحثي معهد ماساتشوستس للتكنولوجيا ، فإن معالجات Apple M1 لها عيب جديد لا يمكن تصحيحه.

Share.

Leave A Reply