首页
/ testssl.sh 中关于 emSign CA 证书链信任问题的技术分析

testssl.sh 中关于 emSign CA 证书链信任问题的技术分析

2025-05-27 10:00:37作者:袁立春Spencer

问题背景

在网络安全评估工具 testssl.sh 的最新开发版本 3.2rc3 中,发现了一个关于证书链验证的问题。该问题影响了由 emSign CA(包括 emSign Root CA - G1 和 emSign ECC Root CA - G3)签发的服务器证书的信任链验证结果。

问题表现

当使用 testssl.sh 测试由 emSign CA 签发的证书时(例如 epramaan.meripehchaan.gov.in 和 dla.gov.in 等域名),工具会错误地报告证书链在 Apple 和 Java 信任库中不完整。具体表现为:

Chain of trust               NOT ok: Apple (chain incomplete) Java (chain incomplete)
                                     OK: Mozilla Microsoft Linux

然而实际上,emSign CA 的根证书已经被广泛信任,包括在 Apple 的根证书库中(自 2022 年 2 月 8 日起),并且应该在这些操作系统中被正确验证。

技术原因分析

这个问题源于 testssl.sh 内置的信任库数据未及时更新。工具使用本地存储的各个操作系统和平台的根证书列表来进行离线验证。当这些列表没有包含最新的根证书更新时,就会导致误报。

具体到 emSign CA 的情况:

  1. emSign Root CA - G1 和 emSign ECC Root CA - G3 确实已被 Apple 信任
  2. 这些根证书也已被 Java 信任库包含
  3. 但 testssl.sh 的本地信任库数据没有反映这些更新

解决方案

该问题已在最新版本中得到修复,主要更新包括:

  1. 更新了 Apple 信任库数据,添加了 emSign 相关根证书
  2. 同步更新了 Java 信任库数据
  3. 确保所有相关平台的信任链验证能够正确识别 emSign CA 签发的证书

对用户的影响和建议

对于使用 testssl.sh 进行安全评估的用户,特别是测试使用 emSign CA 证书的印度政府相关网站时,需要注意:

  1. 如果使用旧版本,可能会得到错误的证书链验证结果
  2. 建议更新到最新版本以获得准确的验证结果
  3. 对于关键业务系统,建议交叉验证多个工具的结果

总结

证书信任链验证是 TLS/SSL 安全评估中的重要环节。testssl.sh 作为广泛使用的开源工具,需要定期更新其内置的信任库数据以确保验证准确性。此次 emSign CA 相关问题的修复,体现了开源社区对工具维护的及时响应,也提醒用户保持工具更新的重要性。

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