CVE-2026-43056Linux内核中的mana驱动程序存在一个释放后使用(Use-After-Free)漏洞。该漏洞出现在`add_adev()`函数的错误处理路径中。当`auxiliary_device_add()`函数调用失败时,代码会跳转并调用`auxiliary_device_uninit()`,该操作会触发释放包含`mana_adev`结构的内存。然而,随后的代码继续访问已释放内存中的`adev->id`,导致内核崩溃或潜在的权限提升风险。
该漏洞根植于Linux内核Azure Network Adapter (mana)驱动的设备管理逻辑中。在`add_adev()`函数内,`auxiliary_device`结构体嵌入在`mana_adev`结构体内部。当尝试添加辅助设备失败时,函数执行流程进入错误处理分支。此时,`auxiliary_device_uninit()`被调用,进而执行`adev_release()`回调函数,导致`mana_adev`被完全释放。由于错误处理代码未及时返回,而是继续执行后续的清理逻辑并试图访问`adev->id`成员,从而触发了释放后使用漏洞。攻击者利用此漏洞需具备本地低权限,可通过特定操作触发设备初始化失败路径,造成内核拒绝服务或进一步利用。