CVE-2025-55093CVE-2025-55093是Eclipse基金会ThreadX网络支持模块NetX Duo中的一个安全漏洞。该漏洞存在于NetX Duo 6.4.4之前的版本中,具体位于_nx_ipv4_packet_receive()函数中。当系统处理单播DHCP消息时,由于对输入数据包的处理逻辑存在缺陷,可能导致越界读取操作,从而引发4字节内存损坏。
NetX Duo是Eclipse ThreadX实时操作系统(RTOS)的网络协议栈组件,广泛应用于嵌入式系统和物联网(IoT)设备中。该协议栈支持IPv4和IPv6双协议栈,并提供了包括TCP/IP、UDP、DHCP、DNS等多种网络协议的实现。由于ThreadX及其组件被广泛应用于工业控制、医疗设备、消费电子、汽车电子等关键领域,该漏洞的影响范围可能涉及大量嵌入式设备。
该漏洞的CVSS 3.1评分为5.3分,属于中等严重等级。攻击者可以通过网络远程利用该漏洞,无需认证和用户交互。漏洞的影响主要体现在完整性方面,可能导致4字节内存被损坏,虽然机密性和可用性不受直接影响,但内存损坏可能为后续更严重的攻击(如代码执行)创造条件。该漏洞由[email protected]发现并报告,并于2025年10月17日公开披露。
该漏洞的根本原因在于NetX Duo的_nx_ipv4_packet_receive()函数在处理单播DHCP消息时缺乏充分的边界检查。具体而言,当IPv4数据包接收函数处理传入的DHCP单播数据包时,没有正确验证数据包中某些字段的长度或偏移量,导致读取操作超出了分配缓冲区的边界。
从技术层面分析,DHCP协议在正常运行过程中会使用单播通信来响应客户端的请求。当NetX Duo的IPv4层接收到这类DHCP单播消息时,_nx_ipv4_packet_receive()函数负责解析和处理这些数据包。由于代码中对数据包头部或载荷字段的处理逻辑存在缺陷,在特定条件下可能导致4字节的内存越界读取。
攻击者可以通过构造恶意的DHCP单播数据包来触发该漏洞。具体利用方式包括:
1. 攻击者首先需要能够向目标设备所在的网络发送数据包(网络访问权限)。
2. 构造一个特制的DHCP单播数据包,其中包含精心设计的字段值,使得_nx_ipv4_packet_receive()函数在解析时发生越界读取。
3. 当目标设备的NetX Duo协议栈处理该恶意数据包时,触发越界读取,导致4字节内存损坏。
4. 内存损坏可能被利用来修改关键数据结构或控制流信息,为后续利用创造条件。
该漏洞的利用复杂度较低(AC:L),攻击者无需认证(PR:N)且无需用户交互(UI:N),仅需通过网络发送恶意数据包即可触发。