用途:解析 X.509 证书详情并验证证书链完整性,适合部署前后检查服务器证书、排查证书链错误(如 UNABLE_TO_GET_ISSUER_CERT),以及在漏洞赏金或渗透测试中检查弱密钥、通配符误用等证书相关问题。
主要能力:接受证书文件(PEM/DER)或 PEM 文本,也可从远程主机(如 example.com:443)抓取证书;使用 openssl x509 输出 Subject、Issuer、SAN、有效期、公钥信息、签名算法与扩展字段;提供 CA bundle 时用 openssl verify 做链验证;自动检查过期、自签名、弱 RSA 密钥(低于 2048 位)、MD5/SHA1 弱签名算法,并提示通配符证书。
使用方式:需已安装 openssl(Linux/macOS 自带)。设置 CERT_INPUT 为证书路径或 host:port,可选设置 CA_BUNDLE。流程为:先提取 PEM(DER 自动转换,远程用 openssl s_client 抓取),再解析各字段,然后执行自动安全检查,最后在提供 CA bundle 时运行 openssl verify -CAfile "$CA_BUNDLE" "$WORK_CERT" 验证链。
限制与失败模式:unable to load certificate 多为格式不匹配,DER 需加 -inform DER;无 SAN 字段的旧证书可能被现代浏览器拒绝;链验证报 unable to get local issuer certificate 通常是缺少中间 CA,可用 openssl s_client -connect host:443 -showcerts 获取完整链;远程抓取失败可能是防火墙或 SNI 问题,需检查 -servername 与端口。其他用途如证书固定哈希、CT 日志查询在资料中仅给出命令与链接,未展开说明。