首页
/ Sigstore Cosign 2.2.3版本修复关键性CT日志验证绕过问题

Sigstore Cosign 2.2.3版本修复关键性CT日志验证绕过问题

2025-06-10 01:24:35作者:董斯意

在软件供应链安全领域,签名验证是确保软件完整性和来源可信的核心环节。Sigstore项目下的Cosign工具作为主流的容器签名方案,近期在2.2.3版本中修复了一个涉及证书透明度(CT)日志验证的关键缺陷。

问题背景

当用户在使用自建Sigstore基础设施(包括Fulcio、Rekor和TUF)时,若未部署CT日志服务,即使通过--insecure-ignore-sct参数显式要求忽略SCT(Signed Certificate Timestamp)验证,Cosign 2.2.2版本仍会强制检查CT日志公钥。这导致在以下典型场景中出现验证失败:

  1. 开发者通过本地Fulcio服务签发证书
  2. 使用--insecure-ignore-sct参数跳过CT验证
  3. 验证时工具仍尝试加载不存在的ctfe.pub等CT日志公钥文件

技术影响

该缺陷实质上破坏了--insecure-ignore-sct参数的设计预期。该参数本应允许在非生产环境或测试场景中绕过CT验证,特别是在以下情况:

  • 内部开发环境未部署CT日志基础设施
  • 需要快速验证本地签名链的完整性
  • 测试自定义TUF根配置时的临时需求

解决方案

Cosign 2.2.3版本通过代码变更彻底修复了此问题。主要改进包括:

  1. 严格遵循--insecure-ignore-sct参数的语义,当该标志存在时完全跳过CT相关检查
  2. 优化错误处理逻辑,避免在缺少CT资源时抛出非预期错误
  3. 保持与其他安全参数的协同工作,如--insecure-skip-verify

最佳实践建议

对于使用自建Sigstore基础设施的用户,建议:

  1. 立即升级至Cosign 2.2.3或更高版本
  2. 在测试环境验证时,组合使用以下参数:
    --insecure-skip-verify  # 跳过TUF元数据验证
    --insecure-ignore-sct   # 跳过CT日志验证
    
  3. 生产环境仍应保持完整的CT日志验证链

该修复体现了Sigstore项目对安全性与可用性的平衡,使得开发者在保持安全基线的前提下,能够更灵活地搭建测试验证环境。对于软件供应链安全体系建设具有积极意义。

登录后查看全文
热门项目推荐
相关项目推荐