CVE-2025-68340CVE-2025-68340是Linux内核中team网络设备驱动的安全漏洞,CVSS评分5.5,属于中危级别。该漏洞存在于team_port_add函数中,由于设备类型检查改变时机不当导致竞争条件。当尝试将一个已处于UP状态的端口设备(如gre0)添加到team设备时,虽然添加操作会失败,但在失败之前已经修改了team设备的header_ops回调函数。这导致后续操作中ipgre_header函数访问无效的私有数据指针,最终引发内核挂起或BUG。此漏洞需要本地低权限用户即可触发,无需用户交互。
漏洞根本原因在于team_dev_type_check_change函数被过早调用。在team_port_add函数中,该函数负责修改team设备的设备类型(如从eth_header改为ipgre_header),但调用位置在其他安全检查完成之前。当后续检查失败时,设备类型已被修改且无法恢复。具体攻击流程:1) 创建team0设备;2) 创建gre0 GRE隧道设备并设置为UP状态;3) 尝试将gre0设为主team0的从设备;4) 添加操作失败但team0的header_ops已被改为ipgre_header;5) 后续操作调用ipgre_header时,struct ip_tunnel指针指向已释放或无效的team私有数据;6) 导致空指针引用或内核恐慌。修复方案是将team_dev_type_check_change调用移至所有检查完成后,并确保MTU分配逻辑正确。