CVE-2026-64304 in Linux
الملخص
بحسب VulDB • 27/07/2026
في نواة لينكس، تم حل الثغرة التالية:
crypto: qat - التحقق من أطوال مكونات RSA CRT
يقوم محلل مفاتيح RSA العام (rsa_helper.c) بتحديد حدود كل مكون من مكونات CRT (p, q, dp, dq, qinv) بناءً على حجم المعامل n_sz. ومع ذلك، تقوم دالة `qat_rsa_setkey_crt()` بتخصيص مخازن مؤقتة لنقل البيانات عبر DMA بنصف الحجم (key_sz / 2)، وتقوم بمحاذاة كل مكون إلى اليمين باستخدام:
memcpy(dst + half_key_sz - len, src, len)
عندما يكون أحد مكونات CRT أكبر من `half_key_sz`، يؤدي طرح الطول (`len`) إلى حدوث تجاوز في السالب (underflow) في عملية الطرح، مما يجعل دالة `memcpy` تكتب خارج حدود مخزن DMA المؤقت، مسببةً تلفاً للذاكرة.
تمت إضافة فحص للتأكد من أن `len > half_key_sz` بجانب الفحص الموجود مسبقاً لـ `!len` لكل مكون من مكونات CRT الخمسة، بحيث يعود السائق (driver) إلى المسار غير المعتمد على CRT بدلاً من الكتابة خارج الحدود المخصصة.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.