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

الملخص

بحسب VulDB • 22/08/2026

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

net/atm: تصحيح قراءة خارج حدود الـ slab في دالة vcc_setsockopt()

تحتوي الدالة vcc_setsockopt() على فحص غير فعال لقيمة optlen: if (__SO_LEVEL_MATCH(optname, level) && optlen != __SO_SIZE(optname)) return -EINVAL;

إذا كانت نتيجة تقييم __SO_LEVEL_MATCH(optname, level) هي "خطأ" (على سبيل المثال، إذا مرّر المتصل مستوى غير متطابق)، فإن فحص الطول optlen != __SO_SIZE(optname) كان يتم تخطيه بسبب الاختزال المنطقي (short-circuiting). ثم ينتقل التنفيذ إلى switch(optname)، مما يستدعي استدعاء copy_from_sockptr() بافتراض أن optval يحتوي على مساحة كافية.

علاوةً على ذلك، حتى إذا تطابق المستوى (level)، فإن فلتر setsockopt الخاص بـ cgroup BPF يمكنه تقليص قيمة optlen بعد الدخول للدالة. ونظرًا لأن copy_from_sockptr() للنقاط المرجعية في النواة تستخدم دالة memcpy()، فإن هذا يؤدي إلى حدوث قراءة خارج حدود الـ slab (slab-out-of-bounds read) كما يكتشفها KASAN عندما تكون optlen أصغر من حجم البنية المتوقع.

تم إصلاح هذه المشكلة باستخدام copy_safe_from_sockptr()، التي تقوم بشكل غير مشروط بالتحقق من أن قيمة optlen تساوي على الأقل الحجم المتوقع قبل عملية النسخ. كما تم تغيير نوع المتغير المحلي 'value' من 'unsigned long' إلى 'int' بحيث يتطابق SO_SETCLP مع ترميز ABI الخاص بـ sizeof(int) في الأنظمة 64-bit.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

مسؤول

Linux

حجز

15/08/2026

إفشاء

22/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-394509

EPSS

0.00242

KEV

لا

النشاطات

منخفض

المصادر

Might our Artificial Intelligence support you?

Check our Alexa App!