CVE-2026-40097Step CA是专为DevOps设计的自动化证书管理在线证书颁发机构。在0.24.0至0.30.0-rc3之前的版本中,存在一个安全漏洞,允许攻击者触发索引越界错误导致程序崩溃。该漏洞发生在处理TPM设备认证的device-attest-01 ACME挑战期间。攻击者通过发送一个包含空扩展密钥用法(EKU)扩展的精心制作的认证密钥(AK)证书,利用验证逻辑中的缺陷,使Step CA在访问空切片元素时发生恐慌。仅当配置了TPM设备认证时才受影响,未使用该功能的部署不受影响。该问题已在0.30.0-rc3版本中修复。
该漏洞源于Step CA在处理TPM设备认证请求时的ASN.1解码逻辑缺陷。具体来说,当Step CA验证AK证书是否包含tcg-kp-AIKCertificate这一EKU OID时,它会解码EKU扩展的ASN.1值并检查序列的第一个元素。由于代码未充分校验序列的长度,攻击者可以构造一个特殊的AK证书,使其EKU扩展解码为一个空序列(ASN.1 SEQUENCE of length 0)。当程序尝试访问该空序列的第一个元素时,会触发索引越界(index out-of-bounds)异常,导致服务进程Panic并终止。虽然CVSS评分较低(3.7,低危),但由于无需认证且通过网络触发,攻击者可利用此漏洞对启用了TPM认证的Step CA服务实施拒绝服务攻击,导致证书签发服务中断。