CVE-2026-42285GoBGP是一个开源的边界网关协议(BGP)实现。在4.4.0版本中存在一个高危漏洞,未授权的远程BGP对等端可以通过发送特制的BGP UPDATE消息触发服务崩溃。当服务器接收到属性长度不一致的消息时,错误处理内部状态转换,导致AdjRib.Update函数发生空指针解引用。这会导致整个GoBGP进程终止,造成服务完全不可用。该问题已在4.5.0版本中修复。
该漏洞源于GoBGP在处理BGP UPDATE消息时的逻辑缺陷。具体来说,当攻击者发送包含不一致属性长度的特制BGP UPDATE消息给目标服务器时,服务器在解析消息并尝试将路由状态转换为“withdraw”操作时未能正确校验数据有效性。这导致在调用AdjRib.Update函数时,试图访问一个未初始化的空指针。由于Go语言的特性,这种空指针解引用会触发运行时panic,从而导致整个GoBGP进程异常退出。由于该漏洞无需身份认证且通过网络触发,任何能够建立BGP连接的对等方均可利用此漏洞导致目标网络路由服务中断。