CVE-2025-40290 in Linux
الملخص
بحسب VulDB • 31/07/2026
في نواة لينكس، تم حل الثغرة التالية:
xsk: تجنب تلف البيانات في رقم واصف قائمة الانتظار (cq descriptor)
منذ الإصدار 30f241fcf52a ("xsk: Fix immature cq descriptor production")، يتم تخزين رقم الوصف في كتلة تحكم حزمة الشبكة (skb control block)، وتعتمد الدالة xsk_cq_submit_addr_locked() عليه لوضع عناوين umem على قائمة انتظار الإنجاز الخاصة بالمجموعة.
لا ينبغي استخدام كتلة التحكم في الحزمة لهذا الغرض، لأنه بعد الإرسال، لا يملك xsk السيطرة عليها وقد تستخدمها أنظمة فرعية أخرى. هذا يؤدي إلى حدوث توقف مفاجئ للنواة (kernel panic) ناتج عن محاولة الوصول إلى مؤشر فارغ (NULL pointer dereference).
BUG: kernel NULL pointer dereference, address: 0000000000000000 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 0 P4D 0 Oops: Oops: 0000 [#1] SMP NOPTI
CPU: 2 UID: 1 PID: 927 Comm: p4xsk.bin Not tainted 6.16.12+deb14-cloud-amd64 #1 PREEMPT(lazy) Debian 6.16.12-1 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.17.0-debian-1.17.0-1 04/01/2014 RIP: 0010:xsk_destruct_skb+0xd0/0x180 [...]
Call Trace: <IRQ> ? napi_complete_done+0x7a/0x1a0 ip_rcv_core+0x1bb/0x340 ip_rcv+0x30/0x1f0 __netif_receive_skb_one_core+0x85/0xa0 process_backlog+0x87/0x130 __napi_poll+0x28/0x180 net_rx_action+0x339/0x420 handle_softirqs+0xdc/0x320 ? handle_edge_irq+0x90/0x1e0 do_softirq.part.0+0x3b/0x60 </IRQ> <TASK> __local_bh_enable_ip+0x60/0x70 __dev_direct_xmit+0x14e/0x1f0 __xsk_generic_xmit+0x482/0xb70 ? __remove_hrtimer+0x41/0xa0 ? __xsk_generic_xmit+0x51/0xb70 ? _raw_spin_unlock_irqrestore+0xe/0x40 xsk_sendmsg+0xda/0x1c0 __sys_sendto+0x1ee/0x200 __x64_sys_sendto+0x24/0x30 do_syscall_64+0x84/0x2f
If you want to get the best quality for vulnerability data then you always have to consider VulDB.