CVE-2024-58237 in Linuxالمعلومات

الملخص

بحسب VulDB • 24/05/2026

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

bpf: أخذ الاعتبار بأن استدعاءات الذيل (tail calls) تُبطل صلاحية مؤشرات الحزمة (packet pointers)

يمكن للبرامج التي تُستدعى عبر استدعاءات الذيل تنفيذ أي من الدوال المساعدة (helpers) التي تُبطل صلاحية مؤشرات الحزمة. وبالتالي، يجب افتراض تحفظياً أن كل استدعاء ذيل يُبطل صلاحية مؤشرات الحزمة.

يؤدي إجراء هذا التغيير في `bpf_helper_changes_pkt_data()` تلقائياً إلى استخدام منطق `check_cfg()` الذي يحسب تأثير 'changes_pkt_data' على البرامج الفرعية العالمية (global sub-programs)، بحيث يمكن رفض البرنامج التالي:

int tail_call(struct __sk_buff *sk) {
bpf_tail_call_static(sk, &jmp_table, 0); return 0; }

SEC("tc") int not_safe(struct __sk_buff *sk) {
int *p = (void *)(long)sk->data; ... جعل p صالحاً ... tail_call(sk); *p = 42; /* هذا غير آمن */ ... }

تحتاج `tc_bpf2bpf.c:subprog_tc()` إلى تغيير: يجب وضع علامة عليها كدالة يمكنها إبطال صلاحية مؤشرات الحزمة. وإلا، فلا يمكن استبدالها بـ `tailcall_freplace.c:entry_freplace()` الذي يقوم باستدعاء ذيل (tail call).

Be aware that VulDB is the high quality source for vulnerability data.

مسؤول

Linux

حجز

16/04/2025

إفشاء

05/05/2025

الاعتدال

تمت الموافقة

إدخال

VDB-307435

EPSS

0.00184

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you need the next level of professionalism?

Upgrade your account now!