تصنف الثغرات الشهيرة #Spectre #meltdown التي ظهرت في كافة المعالجات تقريبا ومن ضمنها انتل والتي أعلن عنها قبل يومين على انها side channel vulnerability. فما معنى ذلك؟ هذا النوع من الثغرات ناتج عن طريقة تنفيذ وبناء النظام او البرنامج وليس في تصميمه. (يتبع)
en.m.wikipedia.org
en.m.wikipedia.org
مثلا: لو كنت بجانب واحد يفتح جواله واستغرقت عملية ادخال الرقم السري ثانية فراح تستنتج - فقط من "الوقت" المستغرق - انه الرقم قصير جدا قد لا يتعدى عددين او ثلاثة. هذه المعلومة (طول الرقم السري) حصلت عليها دون اي اختراق للنظام الأمني او استغلال وجود خطا في النظام الأمني (يتبع)
كذلك في ال side channel attack يتم الاعتماد على الخصائص الفيزيائية لطريقة تنفيذ وعمل النظام (الوقت المستغرق للمعالجة، كمية الطاقة المستهلكة، ...الخ) لمعرفة مفتاح التشفير او كلمة السر او غيرها عبر تطبيق طرق احصائية. (يتبع)
نعود للثغرتين الاخيرتين. تعتمد هذه الثغرات على استغلال خاصية في المعالج تسمح له بتوقع التعليمات predictive analysis التي سيتم تنفيذها وبشكل خاص التفرع في تنفيذ البرنامج الناتج عن الجمل الشرطية branch prediction (اي فرع سيتم تنفيذه then او else). (يتبع)
عندما يتوقع المعالج ان فرع معين branch من التعليمات في البرنامج سيتم تنفيذه فانه يقوم بجلب هذه التعليمات الى خط الانتاج pipeline الخاص بتنفيذ تعليمات المعالج ويبدا بالتنفيذ (يتم تنفيذ التعليمات instructions في المعالج في خط انتاج لتسريع التنفيذ) en.m.wikipedia.org
هنا تجدون المزيد عن ال branch prediction في المعالجات الحديثة وأهميته في تسريع عمل المعالج بشكل كبير en.m.wikipedia.org
بعد ذلك سيكتشف المعالج طبعا ان تنبؤه خاطئ 😒 وان التعليمات (من البرنامج الضحية🙃😇) التي قام بتنفيذها (بناء على خداع البرنامج المهاجم👹) لم يكن من المفترض ان تنفذ فيقوم بتنظيف الرجسترات ليعود لتكملة تنفيذ البرنامج الأصلي (المهاجم) ولكن دون تنظيف ذاكرة الكاش cache memory 🤫😱(يتبع
طبعا سيقوم البرنامج المهاجم ☠️بقراءة البيانات الخاصة بالبرنامج الضحية والموجودة حاليا في الذاكرة الكاش وبالتالي استطاع سرقة بيانات البرنامج الضحية 😜😈👹 عبر قناة جانبية خفية covert channel هي ذاكرة الكاش
لاحظ ان المهاجم 😈لم يستغل اَي خلل او خطا في البرنامج الضحية 😇🙃 وإنما استغل البيئة الفيزيائية التي تتم فيها عملية التنفيذ وهو المعالج واستخدام قناة مخفية جانبية هي ذاكرة الكاش (يتبع)
مالفرق بين الهجومين؟ هجوم سبيكترا ☠️يكسر حاجز الحماية 🔐الذي يوفره نظام التشغيل بين البرامج المختلفة على الجهاز بحيث يسمح لبرنامج بالتجسس على برنامج اخر في نفس الجهاز اثناء عمل البرنامجين (يتبع)
هجوم ميلتداون يسمح للبرنامج المهاجم 👹😈 بالتجسس مباشرة على ال big boss 👮♂️ او نظام التشغيل kernel بكل ما يحويه من أنظمة أمنية أساسية وبالتالي بشكل غير مباشر على البرامج الاخرى 😇🙃 (يتبع)
جاري تحميل الاقتراحات...