Linux Security

الباحثون في أمن VUSEC موجودون في ذلك مرة أخرى … يتم الآن رفع الحصار على مجموعة أخرى من نقاط الضعف الأمنية التي تؤثر على معالجات Intel وكذلك التصميمات الأساسية ARM. هذا الضعف الجديد يطلق عليه تدريب منفرد.

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

تدريب منفردة

يتطلب متغير التدريب منفرداً تحديثًا للوحدة المعالجة المركزية Intel CPU بالإضافة إلى تخفيف البرامج إلى Kernel Linux و KVM. هناك أيضًا متغير منفرد للتدريب يؤثر على نوى Intel Lion Cove التي تتطلب نهجًا منفصلًا للتخفيف. أخيرًا ، يتطلب المتغير الثالث أيضًا تحديثًا من رمز Microcode Intel بالإضافة إلى تصحيحات برامج Intel و ARM إلى Kernel Linux.

تدريب التخفيف الفردي

تشرح ورقة الأمان VUSEC مباشرة اليوم: “في هذه الورقة ، نتحدى هذا الافتراض ونظهر أنه حتى عزل المجال المثالي لا تكفي لردع الهجمات العملية. تحقيقًا لهذه الغاية ، نقوم بتحليل هجمات SPECTRE-V2 ذاتية التدريب بشكل منهجي ، حيث تحدث كل من التدريب والاختطاف في التدفق المضاربة في نفس المجال (الضحية). في حين يُعتقد أن هجمات التدريب الذاتي تقتصر على سيناريو في المجال-حيث يمكن للمهاجمين تشغيل رمز تعسفي وحقن أدوات الإفصاح الخاصة بهم في صندوق رمل (افتراضي) مثل EBPF-يظهر التحليل المتغيرات المتقاطعة في الممارسة العملية. على وجه التحديد ، وصفنا ثلاث فئات جديدة من الهجمات ضد Kernel Linux ونقدم مآخرين من طرف إلى طرف تسرب ذاكرة kernel على وحدة المعالجة المركزية الأخيرة لـ Intel بسرعة تصل إلى 17 كيلو بايت/ثانية. خلال تحقيقنا ، تعثرنا أيضًا على مشكلتين من Intel يكسرون تمامًا (المستخدم والضيف و Hypervisor) العزلة وهجمات Spectre-V2 الكلاسيكية القابلة لإعادة تمكينها.

تدريب منفردة

لم يتم إخطارتي بوقت قصير إلا قبل رفع الحصار اليوم على التدريب الفردي ، لذلك ما زلت أحفر التفاصيل بنفسي. يجب أن يكون موقع التدريب الفردي لهذا الضعف الآن في vusec.net. عندما تتوفر تصحيحات Linux kernel و microcode New Intel CPU ، سأقوم بإجراء بعض المعايير لقياس أي النفقات العامة الجديدة المرتبطة بهذه التخفيفات الأمنية الإضافية.

تحديث: ال تخفيف اختيار الهدف غير المباشر (It) تم دمجها على Linux git. يشرح ديف هانسن من إنتل:

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

وبالتالي فإن التأثير الواسع غير المعتاد على هذا واحد. تفاصيل:

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

المعالجات المتأثرة:

– بحيرة Cascade ، بحيرة كوبر ، ويسكي ليك الخامس ، قهوة ليك آر ، مذنب
بحيرة وبحيرة Ice و Tiger Lake و Rocket Lake.

بالإضافة إلى تخفيف حقن تاريخ الفرع داخل الوضع كما تم دمجها على Linux Git:

تخفيف حقن تاريخ الفرع داخل الوضع عبر برامج BFP الكلاسيكية

هذا يضيف تاريخ تخفيف تاريخ المقاصة إلى برامج CBPF لـ X86. تم الإبلاغ عن هجمات BHI داخل الوضع عبر CBPF الملقب IBTI من قبل الباحثين في VUSEC.

بالنسبة للأجهزة التي لا تدعم BHI_DIS_S ، فإن التخفيف الموصى به هو تشغيل تسلسل البرمجيات القصير متبوعًا بتعليمات IBHF بعد تنفيذ CBPF. على الأجهزة التي تدعم BHI_DIS_S ، تمكين BHI_DIS_S وتنفيذ IBHF بعد تنفيذ CBPF.

سياج تاريخ الفرع غير المباشر (IBHF) هو تعليمة جديدة تمنع التنبؤات المستهدفة غير المباشرة بعد الحاجز من استخدام تاريخ الفرع من قبل الحاجز بينما يتم تمكين BHI_DIS_S. على الأنظمة القديمة ، سيؤدي هذا إلى رسم خريطة إلى NOP. يوصى بإضافة هذا السياج في نهاية برنامج CBPF لدعم ترحيل VM. هذه التعليمات مطلوبة على الأجزاء الأحدث مع BHI_NO للتخفيف بالكامل من هذه الهجمات.

يعطل الكود الحالي التخفيف لأي شيء يعمل باستخدام مجموعة بتات قدرة SYS_ADMIN. لم يكن القصد هو إضاعة الوقت في التخفيف من عملية يمكنها الوصول إلى أي شيء تريده على أي حال

Source link


اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *