CVE-2026-43083Linux内核net: ioam6模块中存在严重的安全漏洞。当处理特定类型的数据包时,由于未对队列映射索引进行边界检查,可能导致数组越界访问。此外,该模块还存在锁缺失问题,在多上下文环境下可能引发竞态条件,导致系统不稳定或崩溃。
该漏洞位于`net: ioam6`驱动的`__ioam6_fill_trace_data`函数中。当`trace->type.bit6`被置位且`is_input`为真时,代码调用`skb_get_tx_queue(dev, skb)`。此时,`skb->queue_mapping`存储的是入站设备的RX队列索引。如果入站设备的RX队列数量多于出站设备(dev)的TX队列数量,`skb_get_queue_mapping(skb)`返回的索引将超过`dev->num_tx_queues`,导致对`dev->_tx[]`数组的越界访问。此外,由于`__ioam6_fill_trace_data()`在软中断和进程上下文中均可被调用,却未使用`spin_lock_bh()`保护`qdisc_qstats_qlen_backlog()`,从而引入了竞态条件风险。