CVE-2026-43052CVE-2026-43052 是 Linux 内核 mac80211 子系统中的一个高危漏洞。该漏洞源于 `ieee80211_tdls_oper` 函数在处理 `NL80211_TDLS_ENABLE_LINK` 操作时,仅检查了站点是否存在,而未验证该站点是否为真正的 TDLS(Tunneled Direct Link Setup)站点。攻击者可利用此缺陷,对非 TDLS 站点执行 TDLS 操作,导致在操作失败前产生非预期的副作用,如修改信道上下文和 HT 保护机制。成功利用该漏洞可能导致系统完整性受损和可用性下降,CVSS v3.1 评分为 7.1。
该漏洞位于 Linux 内核的无线驱动子系统 mac80211 中,具体涉及 `net/mac80211/tdls.c` 文件内的 `ieee80211_tdls_oper` 函数。当用户空间程序通过 Netlink 发送 `NL80211_TDLS_ENABLE_LINK` 命令时,内核代码会查找对应的 `sta`(站点)结构体。然而,现有代码逻辑存在的缺陷是,它只验证了 `sta` 指针是否非空(即站点是否存在于哈希表中),却忽略了检查 `sta->sta.tdls` 标志位。
由于缺乏这一关键检查,本地低权限攻击者可以针对普通的非 TDLS 站点(如标准的 AP-Client 关联站点)触发 TDLS 启用流程。这会导致内核执行原本仅应用于 TDLS 对等端的操作,例如错误地修改信道上下文(Channel Context)和 HT(High Throughput)保护设置。尽管操作最终可能因状态不一致而失败,但在失败前产生的副作用已经破坏了无线接口的正常状态,可能导致拒绝服务或内核崩溃。修复方案是在执行任何副作用操作之前,提前检查 `sta->sta.tdls` 标志,确保操作仅针对合法的 TDLS 对端执行。