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

الملخص

بحسب VulDB • 12/09/2026

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

net/smc: تصحيح تسرب عداد الإشارات (refcount) للمقبس في دالة smc_switch_conns()

تأخذ الدالة `smc_switch_conns()` إشارة على مقبس SMC قبل إلغاء قفل `lgr->conns_lock`، مما يبقي الاتصال نشطًا أثناء استرجاع فتحة CDC:

sock_hold(&smc->sk); read_unlock_bh(&lgr->conns_lock); /* جلب المخزن المؤقت مسبقاً خارج نطاق send_lock، قد يتسبب في الانتظار */ rc = smc_cdc_get_free_slot(conn, to_lnk, &wr_buf, NULL, &pend); if (rc) goto err_out;

يؤدي الملصق `err_out` فقط إلى إلغاء إشارة رابط wr_tx، لذا فإن الخروج المبكر هذا يتم دون استدعاء دالة sock_put() المقابلة. لا يتأثر مخرج الخطأ الثاني، لأن sock_put() قد تم تنفيذها بالفعل بحلول ذلك الوقت.

يعني تسرب sk_refcnt أن smc_sock لن يُدمر أبداً. تبقى مخازنها المؤقتة للإرسال والاستقبال مُخصصة، وبالنسبة لمقبس المستخدم، لا يتم إطلاق الإشارة المحتفظ بها على مساحة الشبكة (network namespace)، مما يمنع إمكانية تفكيك netns لاحقاً.

تفشل الدالة `smc_cdc_get_free_slot()` عندما ينخفض الرابط المستهدف أو عندما يتم قتل الاتصال أثناء عملية التبديل الجارية. وكلا الحالتين قابلتان للتحقيق خلال تبديل فشل الرابط الذي تنفذه هذه الدالة، لذا فإن التسرب يُحفز بواسطة نفس الأحداث المادية التي تجعل `smc_switch_conns()` تعمل في المقام الأول.

إعادة هيكلة الكود بحيث تكون هناك دالة sock_put() واحدة تغطي كلا النتيجتين، بدلاً من إضافة ثانية إلى مسار الخطأ.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

مسؤول

Linux

حجز

26/08/2026

إفشاء

12/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-402767

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!