كشف باحثون من جامعة تورنتو عن هجوم جديد باسم GPUThor يستغل تقنية Rowhammer لإحداث قلبات في بتات ذاكرة بعض بطاقات NVIDIA، رغم تفعيل حماية تصحيح الأخطاء ECC. وأظهر الباحثون أن الهجوم قد يؤدي إلى حالة حجب خدمة، كما يمكنه في سيناريو محدد إفساد جداول صفحات ذاكرة GPU بما يتيح لبرنامج CUDA غير مميز الوصول إلى ذاكرة عشوائية وفتح جلسة بصلاحيات root على النظام المضيف، بحسب نتائج الورقة البحثية.
ما الذي يميز GPUThor؟
تعتمد هجمات Rowhammer على الوصول المتكرر إلى صفوف الذاكرة لزيادة احتمال تغيير حالة البتات في الصفوف المجاورة. وقد عدّل الباحثون نمط الوصول في GPUThor ليصبح غير منتظم، بحيث يتجنب تفعيل آلية Target Row Refresh، أو TRR، في ذاكرة GDDR6. واستند هذا التعديل إلى سلوكين غير موثقين في وحدات GPU يتعلقان بدمج طلبات الذاكرة وتواتر تفعيل TRR.
اختُبر الهجوم على بطاقات NVIDIA من فئة Ampere المزودة بذاكرة GDDR6، وهي RTX A4000 وRTX A4500 وRTX A5000 وRTX A6000. ووفق الباحثين، أنتج الأسلوب الجديد ما يصل إلى 6.6 أضعاف عمليات تنشيط صفوف الذاكرة المهاجمة مقارنة بالمفاهيم السابقة، وسجل بين 72,000 و377,000 قلبة بت لكل غيغابايت عند تعطيل ECC. وتمثل هذه النتائج زيادة بين 4,548 و23,597 مرة مقارنة بهجوم GPUHammer السابق، مع اقترابها من معدلات هجمات Rowhammer القوية على المعالجات المركزية.
لماذا لا تكفي ECC وحدها؟
تستخدم NVIDIA آلية SECDED ECC لتصحيح أخطاء البت الواحد واكتشاف أخطاء البتين داخل كتل الذاكرة المراقبة. لكن الباحثين سجلوا مع تفعيل ECC نحو 387 خطأ مزدوج البت، وهي أخطاء تستطيع الآلية اكتشافها من دون تصحيحها، إضافة إلى خطأين ثلاثيي البت قالت الدراسة إن ECC أصلحتهما بصورة غير صحيحة، ما أدى إلى فساد في البيانات.
وبحسب معدلات GPUThor، قد يصبح العثور على قلبة بت قابلة للاستغلال ممكناً خلال نحو 1.1 دقيقة، مقارنة بنحو 21.9 ساعة في GPUHammer. وهذه النقلة هي جوهر أهمية البحث: فالحماية الموجودة لا تلغي الخطر عندما تنتقل الأخطاء من نطاق البت الواحد إلى أنماط متعددة البتات.
تعطيل البطاقة وتصعيد الصلاحيات
أظهر الباحثون أن GPUThor يستطيع وضع بطاقة RTX A6000 مزودة بـECC في حالة حجب خدمة، بحيث تعيد البطاقة تشغيل نفسها كل ساعتين وتنهي أعباء العمل. وبعد تكرار الهجوم على البطاقة نفسها، قد تُصنّف في النهاية على أنها تحتاج إلى الاستبدال.
أما السيناريو الأخطر فيتعلق بإفساد جداول صفحات GPU. ويقول الباحثون إن ذلك قد يمنح برنامج CUDA غير مميز قدرة على الوصول إلى الذاكرة بصورة تعسفية، ويفتح shell بصلاحيات root على النظام المضيف. كما أشاروا إلى أن تصعيد الصلاحيات قد يظل ممكناً على بطاقات Ampere المخصصة للخوادم، ومنها A100، بسبب اعتمادها على مستوى SECDED من ECC، حتى مع وجود قيود تحد من بعض تأثيرات حجب الخدمة.
ما الذي يتغير عملياً؟
أبلغ الباحثون NVIDIA بالنتائج في 29 أبريل، ونشرت الشركة في 21 أغسطس إرشادات للتخفيف من الخطر. وتوصي NVIDIA بتفعيل SYS-ECC وعزل IOMMU/DMA، ومراقبة بيانات أخطاء GPU، وتقييد مشاركة أعباء العمل غير الموثوقة أو تنفيذها. كما تختلف قابلية التأثر، وفق الشركة، باختلاف نوع DRAM وتقنية الذاكرة وتصميم المنصة وآليات الحماية داخل الذاكرة وإعدادات النظام.
لم تُرصد قلبات بت في الاختبارات نفسها على وحدات GDDR6X أو HBM2e، لكن الباحثين يحذرون من أن وحدات HBM3/e وGDDR7 المزودة بـECC داخل القالب قد تكون معرضة أيضاً إذا أمكن توليد قلبات متعددة البتات. وتوصي الدراسة بتجنب مشاركة GPU بين المستأجرين متى أمكن، ومراقبة عدادات أخطاء ECC، وتقييد أعباء CUDA غير الموثوقة. وتبقى الحماية الكاملة، بحسب الباحثين، مرتبطة بتطوير ECC أقوى للأخطاء متعددة البتات ودفاعات عتادية إضافية.
كيف أعددنا هذا الخبر؟
اعتمد الخبر على المصدر الأصلي الموضح أعلاه. قد نستخدم أدوات آلية للمساعدة في الاستخراج والتصنيف والصياغة،
لكن النشر يخضع لقواعد تمنع المحتوى المكرر والقصير أو الروتيني منخفض القيمة.
اقرأ سياستنا التحريرية.