اكتشاف ثغرة أمنية “غير قابلة للإصلاح” في معالجات M1.. هل من داعٍ للقلق؟

اكتشاف ثغرة أمنية “غير قابلة للإصلاح” في معالجات M1.. هل من داعٍ للقلق؟
أستمع الى المقال

اكتشف باحثون يعملون مع معهد ماساتشوستس للتكنولوجيا عيبًا جديدًا في معالجات آبل يصفونه بأنه لا “يمكن إصلاحه”. وفي حين أن الأمر يبدو سيئًا، ولكن في ظل بعض الظروف، فمن المحتمل أنه ليس شيئًا يدعوا المستهلكين إلى القلق كثيرًا.

“باك مان” يراوغ

تنتج الثغرة التي أُطلق عليها اسم “PACMAN” عن مشكلة أمان في الأجهزة مع رموز مصادقة المؤشرات أو Apple (PAC). إذ كتب الباحثون:

“لقد أظهرنا أنه من خلال الاستفادة من هجمات التنفيذ التخمينية، يمكن للمهاجم تجاوز عنصر أساسي مهم لأمن البرامج يسمى ARM Pointer Authentication لإجراء هجوم اختطاف للتحكم في التدفق.”

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

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

*هجوم القوة العمياء: هو نوع من الهجوم الذي يعتمد على النص المشفّر فقط، وتتم فيه محاولة تجربة كل المفاتيح المحتملة لفك النص المشفر، ويفترض هذا النوع من الهجوم أن المهاجم على علم بخوارزمية التشفير وكذلك بمجال مفتاح الشيفرة (أي جميع المفاتيح المحتملة).

لكن ما ينجح هو استخراج البيانات من خلال القنوات الجانبية والاستفادة من التنفيذ التخميني. إذ يكتب فريق الباحثين:

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

استهداف نقطة قوة المعالجات الجبارة

“التنفيذ التخميني” هو ما يحدث عندما تنفذ وحدة المعالجة المركزية تعليماتٍ برمجية (code) قبل أن تعرف ما إذا كانت مفيدةً أم لا. وهذا جزء مهم من المعالجات الحديثة. إذ تؤدي جميع المعالجات الحديثة عالية الأداء ما يعرف بالتنفيذ “خارج الترتيب”. هذا يعني أن الشريحة لا تنفذ التعليمات بالترتيب الدقيق لوصولها. بدلاً من ذلك، يتم إعادة تنظيم التعليمات البرمجية وتنفيذها بأي ترتيب تعتقد الواجهة الأمامية لوحدة المعالجة المركزية أنه سيكون أكثر كفاءة.

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

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

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

حلول معروفة لكن غير ممكنة

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

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

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

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

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

الثغرات حقيقية، لكن المخاطر التي تمثلها مبالغ فيها في بعض الأحيان.

هل أعجبك المحتوى وتريد المزيد منه يصل إلى صندوق بريدك الإلكتروني بشكلٍ دوري؟
انضم إلى قائمة من يقدّرون محتوى إكسڤار واشترك بنشرتنا البريدية.