CVE-2026-64026 in Linuxالمعلومات

الملخص

بحسب VulDB • 20/07/2026

في نواة لينكس، تم حل الثغرة التالية:

rxrpc: إصلاح التناقض بين فك تشفير البيانات وsplice() عن طريق نسخ البيانات إلى المخزن المؤقت في recvmsg

يُحسّن هذا الإصلاح من معالجة CVE-2026-43500.

إصلاح تلف ذاكرة التخزين المؤقت للصفحات (pagecache) الناتج عن فك التشفير الموضعي لحزمة DATA المُرسلة محلياً بواسطة splice()، وذلك بإزالة مشاركة الحزم في خيط الإدخال/الإخراج (I/O thread)، واستخراج محتوى الحزمة بشكل قاطع إلى مخزن مؤقت وسيط (bounce buffer) حيث يتم فيه إجراء عملية فك التشفير. ثم يقوم recvmsg() (أو ما يعادله في النواة) بنسخ البيانات من المخزن المؤقت الوسيط إلى المخزن المؤبت الوجهة. تبقى sk_buff دون تغيير بعد ذلك.

يتمثل ميزة إضافية لهذا النهج في أن الحزمة تُرتب داخل المخزن المؤقت بالمحاذاة الصحيحة المطلوبة لتتمكن خوارزميات التشفير (crypto algorithms) من معالجتها مباشرةً. يبدو أن أداء عمليات التشفير أسرع قليلاً، ومفاجئاً، فإن الأداء دون تشفير لم يتغير بشكل كبير - ربما بسبب إزالة التعقيد عن خيط الإدخال/الإخراج.

ميزة أخرى هي أن خيط الإدخال/الإخراج لا يحتاج إلى نسخ الحزم، مما كان سيؤدي إلى إبطاء توزيع الحزم، وإنشاء رسائل ACK، وما إلى ذلك.

ينتمي المخزن المؤقت إلى المكالمة (call)، ويتم تخصيصه في البداية بحجم 2 كيلوبايت، وهو حجم كافٍ لاستيعاب حزمة فرعية ضخمة كاملة (jumbo subpacket)، لكن سيتم زيادة حجم المخزن المؤقت إذا لزم الأمر. ومع ذلك، لأداء هذا العمل، قد يتسبب MSG_PEEK في فك تشفير حزمة لاحقة داخل المخزن المؤقت، وفي هذه الحالة ستحتاج الحزمة السابقة إلى إعادة فك التشفير لاستدعاء recvmsg() لاحقاً.

لاحظ أن rx_pkt_offset قد يرى القيمة 0 الآن كمحاذاة صالحة بشكل مشروع، لذا تم التبديل إلى استخدام USHRT_MAX للإشارة إلى محاذاة غير صالحة.

كما لاحظ أنه من الأفضل عادةً استبدال مخازن sk_buff الحالية بمخزن جديد مُخصّص بواسطة kmalloc بالحجم المناسب، والتخلي عن البيانات القديمة والمقتطعات (frags) لأن هذا يجعل التعامل مع MSG_PEEK أسهل ويزيل مشكلة إعادة فك التشفير، لكن يبدو أن تحقيق ذلك أمر معقد للغاية. تبدو وظيفة skb_morph() نصف الطريق نحو ما أريده، لكنني لا أرغب في الاضطرار إلى تخصيص sk_buff جديد.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

مسؤول

Linux

حجز

19/07/2026

إفشاء

19/07/2026

الاعتدال

تمت الموافقة

إدخال

VDB-380191

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Want to stay up to date on a daily basis?

Enable the mail alert feature now!