Linux 内核 cortina 以太网驱动竞态高危漏洞 CVE‑2026‑64056 技术解析
近期披露的 CVE‑2026‑64056 是 Linux 内核 net 子系统下 cortina 以太网 GMAC 驱动中的高危安全漏洞,CVSS 评分为 9.8,属于竞态条件类缺陷。该漏洞源于接收报文碎片组装所用 SKB 缓冲区为静态局部变量,多网口并发场景下存在数据竞争,可通过网络远程触发,容易诱发内存越界、释放后使用等次生内存破坏问题,对搭载 Gemini 系列处理器的嵌入式设备、工业控制网关构成安全隐患,值得运维与安全团队开展资产风险核查。
从技术原理来看,漏洞存在于gmac_rx()接收处理函数。驱动原有实现中,用于组装碎片报文的 SKB 对象定义为函数内静态局部变量。Gemini 硬件集成双以太网端口,当两个网口同时收发数据时,两个接收上下文会并发访问同一份静态 SKB 缓冲区。在特定时序条件下,不同端口的报文碎片数据发生交叉覆盖,造成 SKB 状态错乱,进而引发内存访问异常。上游修复方案调整数据结构,将 RX SKB 改为每个端口独立维护的成员变量,保存于端口结构体中,不同网口使用各自独立缓冲区,消除跨端口并发竞争;同时在调用napi_gro_frags()后完成指针清零,规避野指针残留风险。
结合 CVSS 向量CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H分析,该漏洞远程攻击门槛较低,攻击者可向双网口设备两端发送特制碎片报文,制造并发竞争场景,无需预先授权、无需用户交互即可尝试触发缺陷。竞态漏洞受多核调度、报文到达时序影响,往往难以稳定复现,但一旦触发,会造成内核堆损坏,存在信息泄露、代码执行或内核崩溃拒绝服务的风险。
业务场景层面,cortina GMAC 驱动多用于面向工控、智能家居、小型网关的 Gemini 嵌入式处理器。设备启用双以太网端口并同时接收碎片报文时,才会暴露该漏洞。仅使用单网口的设备,不存在跨端口竞争条件,风险相对可控。由于缺陷依赖特定并发时序,常规功能测试很难覆盖,漏洞可长期潜伏在运行设备中。
针对该漏洞,可采用多层处置思路。首先梳理资产清单,确认嵌入式网关、工控设备是否使用 cortina GMAC 以太网驱动,核对内核版本是否处于受影响区间;其次优先合入社区官方补丁,改造 SKB 管理逻辑,实现每个网口独立缓冲区;补丁部署前,可做好网络边界管控,限制不可信外部报文直接接入设备双网口;运行阶段持续监控内核 Oops、内存损坏相关日志,及时捕获异常触发迹象。
嵌入式以太网驱动常受硬件架构、资源限制影响,容易采用静态缓冲区简化开发,在多通道并发场景下引入竞态风险。望获 OS 时刻关注高危漏洞,及时安装修复补丁,保证系统的安全性。持续跟进各类硬件驱动组件安全公告,为嵌入式及工业业务系统提供补丁层面的安全支撑。
总体来看,CVE‑2026‑64056 体现了嵌入式驱动开发中典型的并发设计疏漏。静态全局 / 局部缓冲区简化了编码,却忽略多硬件实例并发访问场景。此类时序相关漏洞复现难度高,容易被低估风险。运维团队需要建立常态化内核漏洞监测机制,重点关注工控、嵌入式设备驱动类安全缺陷,及时完成补丁迭代,降低远程攻击引发的内存破坏、设备宕机等安全威胁。
