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

الملخص

بحسب VulDB • 28/05/2026

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

net/rose: إصلاح تجاوز مؤشر NULL في rose_transmit_link أثناء إعادة الاتصال

أبلغ syzkaller عن خطأ [1]، ويمكن الاطلاع على برنامج إعادة إنتاج الخطأ (reproducer) في [2].

تستخدم صيغ ROSE (ROSE sockets) أربع قيم لـ sk->sk_state وهي: TCP_CLOSE، وTCP_LISTEN، وTCP_SYN_SENT، وTCP_ESTABLISHED. ترفض rose_connect() بالفعل المكالمات الخاصة بـ TCP_ESTABLISHED (-EISCONN) وTCP_CLOSE مع SS_CONNECTING (-ECONNREFUSED)، لكنها تفتقر إلى فحص لـ TCP_SYN_SENT.

عند استدعاء rose_connect() للمرة الثانية بينما لا يزال محاولة الاتصال الأولى قيد التقدم (TCP_SYN_SENT)، فإنها تكتب فوق rose->neighbour عبر rose_get_neigh(). إذا أرجعت هذه الدالة NULL، فإن الصيغة تترك مع rose->state == ROSE_STATE_1 ولكن rose->neighbour == NULL. وعند إغلاق الصيغة لاحقاً، يلاحظ rose_release() حالة ROSE_STATE_1 ويستدعي rose_write_internal() -> rose_transmit_link(skb, NULL)، مما يتسبب في تجاوز مؤشر NULL (NULL pointer dereference).

ووفقاً لـ connect(2)، يجب أن تعيد استدعاء connect() الثاني أثناء وجود اتصال قيد التقدم بالفعل قيمة -EALREADY. أضف هذا الفحص المفقود لـ TCP_SYN SENT لإكمال التحقق من الحالة في rose_connect().

[1] https://syzkaller.appspot.com/bug?extid=d00f90e0af54102fb271
[2] https://gist.github.com/mrpre/9e6779e0d13e2c66779b1653fef80516

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

مسؤول

Linux

حجز

13/01/2026

إفشاء

03/04/2026

الاعتدال

تمت الموافقة

إدخال

VDB-355119

EPSS

0.00123

KEV

لا

النشاطات

منخفض جدًا

المصادر

Might our Artificial Intelligence support you?

Check our Alexa App!