يؤثر EntrySign أيضًا على معالجات AMD Zen 5 ويعرض التحقق من التعليمات البرمجية الدقيقة للخطر.

شعار ثغرة EntrySign

قبل بضعة أسابيع شاركنا هنا على المدونة أخبار ثغرة EntrySign الذي يسمح بالتهرب من آلية التحقق من التوقيع الرقمي أثناء تحديثات التعليمات البرمجية الدقيقة في معالجات AMD.

كما في البداية بدا الأمر وكأنه خطأ يقتصر على أجيال Zen 1 إلى Zen 4، وقد امتدت الآن إلى الرقائق الحالية مثل Ryzen 9000 و EPYC 9005 و Ryzen AI 300 و Ryzen 9000HX. يسمح هذا الخلل، في ظل ظروف معينة، بتعديل التعليمات البرمجية الدقيقة لوحدة المعالجة المركزية عن طريق تجاوز آلية التحقق من التوقيع الرقمي، مع عواقب وخيمة على أمن الأنظمة الافتراضية.

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

هذا التصميم، بالإضافة إلى حقيقة أن AMD استخدمت مفتاح تشفير مشترك لجميع وحدات المعالجة المركزية لديك منذ Zen 1، مما سمح للباحثين باستخراج المفتاح من أي معالج متأثر وإعادة استخدامها للتلاعب بتصحيحات التعليمات البرمجية الدقيقة على أجهزة كمبيوتر أخرى. من المثير للدهشة أن هذا المفتاح يتطابق مع مثال عام لممارسات تشفير NIST SP 800-38B، مما يوضح الاستخدام غير الدقيق لممارسات التشفير الجيدة.

كود مزيف، توقيعات صالحة

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

وقد تم تسهيل هذه العملية من خلال أدوات التحليل مثل Zentool، وهي مجموعة من الأدوات مفتوحة المصدر التي تسمح لك بدراسة التعليمات البرمجية الدقيقة الخاصة بـ AMD وإعداد التصحيحات المعدلة. ولكي يتحقق هذا النوع من الهجوم، يجب أن يكون لدى المهاجم امتيازات Ring 0، أي الوصول إلى أعلى مستوى من نظام التشغيل، وهو أمر ممكن في البيئات الافتراضية إذا تم اختراق برنامج التشغيل الافتراضي أو من خلال تكوينات غير آمنة لتقنيات مثل VT-x أو AMD-V.

التأثير على AMD SEV والمحاكاة الافتراضية الآمنة

إلى جانب التلاعب بالرموز الدقيقة، يشكل EntrySign تهديدًا مباشرًا لـ AMD SEV (المحاكاة الافتراضية المشفرة الآمنة) وامتدادها SEV-SNP (الترقيم المتداخل الآمن)، وهي التقنيات المصممة لضمان سلامة وسرية الآلات الافتراضية حتى في مواجهة الهجمات من المشرف الافتراضي أو نظام المضيف. تتيح هذه الثغرة الأمنية التدخل في سجلات المعالج المحمية، وتعديل جداول الصفحات المتداخلة، وتغيير سلوك أنظمة الضيوف، مما يعرض أمنها للخطر على مستوى عميق.

تدابير الاستجابة والتخفيف من آثار AMD

في هذه الحالة، بدأت AMD بتوزيع تحديثات التعليمات البرمجية الدقيقة التي تعمل على إصلاح الخلل.أو، على الرغم من أنه في الأنظمة التي تستخدم SEV-SNP، من الضروري أيضًا تحديث البرامج الثابتة لوحدة SEV، الأمر الذي يتطلب تحديث BIOS. وقد أرسلت الشركة بالفعل حزمة جديدة إلى الشركات المصنعة يُطلق على ComboAM5PI 1.2.0.3c AGESA، ولكن من المقدر أن تستغرق التصحيحات النهائية أسابيع أو حتى أشهر حتى تصبح متاحة للمستخدمين النهائيين.

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

وأخيرا، إذا كنت مهتمًا بمعرفة المزيد عنها، يمكنك التحقق من التفاصيل في الرابط التالي.