CVE-2026-72341

Naməlum

Təsvir

Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: net/mlx5e: priv->channel_stats[] üçün yayım yarışı (publication race) düzəldildi mlx5e_channel_stats_alloc() funksiyası priv->channel_stats[] massivinə yeni bir element əlavə edir və sonra yayım tokeni kimi priv->stats_nch dəyişənini artırır, lakin bu yaddaş yazma əməliyyatlarının heç biri yaddaş baryerindən (memory barrier) istifadə etmir: priv->channel_stats[ix] = kvzalloc_node(...); if (!priv->channel_stats[ix]) return -ENOMEM; priv->stats_nch++; Eyni vaxtda oxuma əməliyyatı aparan tərəflər dövrün həddini priv->stats_nch vasitəsilə hesablayır və daha sonra adi girişlərlə priv->channel_stats[i] ünvanına müraciət edirlər, məsələn: for (i = 0; i < priv->stats_nch; i++) { struct mlx5e_channel_stats *cs = priv->channel_stats[i]; ... cs->rq.packets ... } Zəif sıralama (weakly-ordered) arxitekturalarında (ARM, PowerPC, RISC-V) channel_stats[ix] və stats_nch dəyişənlərinə yazma əməliyyatları digər CPU-lara proqram sırasından kənar şəkildə görünə bilər. Oxuyan tərəf hələ də channel_stats[N-1] == NULL olduğu halda stats_nch == N olduğunu görə bilər ki, bu da channel_stats dövründə NULL göstəricisinə müraciətə (NULL pointer dereference) səbəb olur. Bu problem istehsalat mühitində BlueField-3 DPU-larda (arm64) müşahidə edilmişdir; burada NIC aktivləşdirilərkən ovs-vswitchd netlink vasitəsilə netdev statistikasını sorğulayır və digər CPU-da işləyən mlx5e_open_channel() -> mlx5e_channel_stats_alloc() ilə yarışa girir: Unable to handle kernel NULL pointer dereference at virtual address 0x840 Hardware name: BlueField-3 DPU pc : mlx5e_fold_sw_stats64+0x30/0x180 [mlx5_core] Call trace: mlx5e_fold_sw_stats64+0x30/0x180 [mlx5_core] dev_get_stats+0x50/0xc0 ovs_vport_get_stats+0x38/0xac [openvswitch] ovs_vport_cmd_fill_info+0x194/0x290 [openvswitch] ovs_vport_cmd_get+0xbc/0x10c [openvswitch] genl_family_rcv_msg_doit+0xd0/0x160 genl_rcv_msg+0xec/0x1f0 netlink_rcv_skb+0x64/0x130 genl_rcv+0x40/0x60 netlink_unicast+0x2fc/0x370 netlink_sendmsg+0x1dc/0x454 ... __arm64_sys_sendmsg+0x2c/0x40 en.h faylında stats_nch üzərində smp_store_release()/smp_load_acquire() cütlüyünü təmin edən mlx5e_stats_nch_write() və mlx5e_stats_nch_read() köməkçi funksiyaları əlavə edildi. Release/acquire cütlüyü aşağıdakı şərti müəyyən edir: stats_nch == N => channel_stats[0..N-1] görünəndir və NULL deyil. Yazan tərəfdə (mlx5e_channel_stats_alloc()) stats_nch artımı mlx5e_stats_nch_write() vasitəsilə, bütün oxuyan tərəflərdə isə (mlx5e RX/TX növbə statistikası, mlx5e_get_base_stats(), ethtool kanallar statistikası, IPoIB statistikası, sw_stats fold və HV VHCA stats agenti) stats_nch mlx5e_stats_nch_read() vasitəsilə oxunur.

CiddilikNaməlum
CVSS—
İstismar ehtimalı—
MəhsulLinux
Dərc15 avq 2026
İlk görülmə15 avq 2026

Necə düzəltmək olar

Yeniləyin
  • Linux Linuxdf122c593735aa5e1c97457767aa10ed8fa972e0, 268869794170af37727816ad02051808adb9c9c3, acd34d24342a28794e706ce8191ca6c3114a38ae, 5c7e3755abf663f033de24f917b77685e9543045, 815515ec68f527ca755cb1e2c1ff9148f6b3ea56, 5a799714e8ca0bce9ea40694f49914cf1adbbaa9 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
Linux Linuxfa691d0c9c0812b9045f3a9420862e47b3b92518 ≤ v < df122c593735aa5e1c97457767aa10ed8fa972e0, fa691d0c9c0812b9045f3a9420862e47b3b92518 ≤ v < 268869794170af37727816ad02051808adb9c9c3, fa691d0c9c0812b9045f3a9420862e47b3b92518 ≤ v < acd34d24342a28794e706ce8191ca6c3114a38ae, fa691d0c9c0812b9045f3a9420862e47b3b92518 ≤ v < 5c7e3755abf663f033de24f917b77685e9543045, fa691d0c9c0812b9045f3a9420862e47b3b92518 ≤ v < 815515ec68f527ca755cb1e2c1ff9148f6b3ea56, fa691d0c9c0812b9045f3a9420862e47b3b92518 ≤ v < 5a799714e8ca0bce9ea40694f49914cf1adbbaa9, 5.17df122c593735aa5e1c97457767aa10ed8fa972e0, 268869794170af37727816ad02051808adb9c9c3, acd34d24342a28794e706ce8191ca6c3114a38ae, 5c7e3755abf663f033de24f917b77685e9543045, 815515ec68f527ca755cb1e2c1ff9148f6b3ea56, 5a799714e8ca0bce9ea40694f49914cf1adbbaa9

Versiyanızı yoxlayın

Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.

Intelligence 360 paketində

Attack Surface Management

Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.