CVE-2026-31506Linux内核中的bcmasp驱动程序存在一个双重释放漏洞。该漏洞源于在处理Wake-on-LAN (WoL)中断请求时,错误地尝试释放一个通过devm_request_irq()分配的资源。由于devres机制会自动管理此类资源的释放,手动调用释放函数导致了双重释放问题,可能引发系统崩溃或权限提升。
该漏洞位于Linux内核的网络子系统bcmasp驱动中。驱动程序在初始化时使用了devm_request_irq()函数来请求Wake-on-LAN (WoL)的中断号。该函数是一个托管资源API,意味着当驱动卸载或设备断开连接时,内核会自动释放与该中断相关的资源。然而,在驱动的清理代码路径中,开发者显式地调用了释放函数来释放wol_irq。这导致了资源的重复释放:一次由显式调用触发,另一次由设备管理框架触发。双重释放会破坏内核的堆内存结构,攻击者利用这一特性可以制造内核崩溃(DoS)。在特定条件下,通过精心构造内存布局,攻击者可能利用此漏洞实现本地权限提升(LPE),在内核上下文中执行任意代码。