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

الملخص

بحسب VulDB • 03/06/2026

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

team: إصلاح خلط الأنواع (type confusion) في header_ops مع المنافذ غير الإيثرنتية

مشابهة للالتزام 950803f72547 ("bonding: fix type confusion in bond_setup_by_slave()")، تعاني team من نفس فئة خلط أنواع header_ops.

بالنسبة للمنافذ غير الإيثرنتية، تقوم team_setup_by_port() بنسخ port_dev->header_ops مباشرة. عندما يستدعي جهاز team لاحقاً dev_hard_header() أو dev_parse_header()، يمكن أن تعمل هذه الاستدعاءات مع net_device الخاص بـ team بدلاً من الجهاز السفلي الحقيقي، مما يؤدي إلى تفسير netdev_priv(dev) كنوع خاص خاطئ وقد يسبب انهيار النظام (crash).

يُظهر تقرير syzbot حدوث انهيار في bond_header_create()، لكن السبب الجذري يكمن في team: حيث تكون البنية الطوبولوجية هي gre -> bond -> team، وتقوم team باستدعاء header_ops الموروثة باستخدام net_device الخاص بها بدلاً من الجهاز السفلي، لذا يتلقى bond_header_create() جهاز team ويفسر netdev_priv() كبيانات خاصة بالـ bonding، مما يسبب انهياراً ناتجاً عن خلط الأنواع.

تم إصلاح ذلك بإضافة غلاف (wrappers) لـ header_ops في team لإنشاء/تحليل الرؤوس، واختيار منفذ فريق ضمن RCU، واستدعاء استدعاءات الجهاز السفلي باستخدام port->dev، بحيث يرى كل استدعاء دائماً سياق net_device الصحيح.

كما تم تمرير الجهاز السفلي المختار إلى استدعاء التحليل السفلي، لضمان أن يكون التكرار محدوداً في البنى الطوبولوجية غير الإيثرنتية المتراكمة وأن تعمل استدعاءات التحليل دائماً مع سياق الجهاز الصحيح.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

مسؤول

Linux

حجز

09/03/2026

إفشاء

22/04/2026

الاعتدال

تمت الموافقة

إدخال

VDB-358870

EPSS

0.00015

KEV

لا

النشاطات

منخفض

المصادر

Might our Artificial Intelligence support you?

Check our Alexa App!