CVE-2025-59962CVE-2025-59962是Juniper Networks Junos OS及Junos OS Evolved路由协议守护进程(rpd)中的一个未初始化指针访问漏洞,CVSS评分为5.3分,属于中危级别。该漏洞影响配置了BGP分片(BGP sharding)功能的设备。攻击者通过触发间接下一跳(indirect next-hop)更新,并结合攻击者无法完全控制的时序条件,可以导致rpd进程崩溃并重启,从而引发拒绝服务(DoS)攻击。
当BGP分片功能启用时,触发间接下一跳的路由解析(例如IGP路由发生变化,导致BGP路由需要重新解析)可能会使rpd崩溃并重启。如果攻击者持续制造IGP路由抖动(route churn),导致路由反复重新解析,将增加触发该问题的可能性,从而可能导致持续的DoS状态。
该漏洞的利用条件相对严格,需要满足以下条件:1)目标设备必须配置并启用了BGP分片功能;2)需要存在间接下一跳的BGP路由;3)需要触发IGP路由变化以引发BGP路由重新解析;4)时序条件需要在攻击者控制范围之外恰好满足。由于攻击向量为邻接网络(AV:A),攻击复杂度高(AC:H),且无需认证和用户交互,该漏洞的实际利用难度较高,但仍可能对网络可用性造成显著影响。
该漏洞影响多个版本的Junos OS和Junos OS Evolved,Juniper官方已发布安全公告JSA103151,建议用户尽快升级到修复版本。21.3R1之前的Junos OS版本和21.3R1-EVO之前的Junos OS Evolved版本不受此漏洞影响。
该漏洞的根本原因在于Juniper OS的路由协议守护进程(rpd)在处理BGP分片(BGP sharding)场景下的间接下一跳(indirect next-hop)路由解析时,存在未初始化指针访问的问题。
技术原理:当BGP分片功能启用后,rpd会将BGP路由表分片存储以提高性能。在处理间接下一跳路由时,rpd需要维护指向下一跳解析结果的指针。当IGP路由发生变化导致BGP间接下一跳需要重新解析时,如果时序条件满足(即在指针被正确初始化之前访问该指针),rpd将访问一个未初始化的内存地址,导致进程崩溃。
利用方式:攻击者需要处于目标设备的邻接网络中(同一广播域或相邻子网),通过发送恶意的BGP路由更新或触发IGP路由变化(如OSPF/IS-IS LSA抖动),使目标设备上的BGP间接下一跳进入重新解析流程。在特定的时序窗口内,rpd将访问未初始化的指针,触发段错误(segfault)并导致进程重启。由于攻击者无法完全控制时序条件,需要持续制造路由抖动以增加触发概率。
该漏洞的影响范围包括rpd进程崩溃导致的BGP会话中断、路由表丢失以及网络可达性中断。虽然不会导致远程代码执行或权限提升,但持续的DoS状态可能严重影响网络运营。