CVE-2026-23831Rekor是用于软件供应链透明度日志的开源工具。该漏洞存在于Rekor 1.4.3及更早版本中,当处理包含空spec.message的cose/v0.0.1类型条目时,会触发空指针解引用导致进程panic。攻击者可通过构造畸形的签名条目来触发此漏洞,虽然线程会恢复且服务继续运行,但会导致客户端收到500错误,影响系统可用性。该漏洞无需认证即可远程利用,CVSS评分5.3,属于中等严重程度。
漏洞根源在于Rekor的条目验证流程存在缺陷。当validate()函数接收到空message的条目时,它会返回nil(表示验证成功),但此时sign1Msg结构体未正确初始化。随后Canonicalize()函数在处理时会尝试解引用v.sign1Msg.Payload,此时sign1Msg为nil状态,导致空指针解引用panic。攻击者只需构造一个spec.message为空的cose/v0.0.1类型条目并提交到Rekor服务,即可触发该漏洞。虽然Go语言的panic recovery机制会使线程恢复,但客户端会收到HTTP 500错误响应。该漏洞影响软件供应链透明度日志的可用性,但不影响数据机密性和完整性。修复版本为1.5.0。