首页/安全/加密与证书速查/CT 日志监控异常签发

CT 日志监控异常签发

证书透明日志公开记录公开信任证书的签发信息,可用 crt.sh 等入口查询自己域名的记录,发现未授权签发与影子资产,并据此决定是否吊销与排查私钥泄露。

加密与证书速查安全更新于 2026-10-13

CT 监控是干什么的

证书透明日志公开记录公共信任证书的签发信息。把自家域名的历史记录定期拉一遍,就能发现两件要紧事:一是存在未授权签发的证书(可能来自误签、历史外包流程或恶意攻击),二是存在自己都不知道还在用的影子资产(遗留在旧云账号、旧子域下的服务)。CT 监控要配合处置流程:确认签发方、向 CA 报告、申请吊销,并回头排查私钥是否已经外泄。

基本信息

数据来源公共 CT 日志,常用聚合查询入口 crt.sh
技术载体证书中的 SCT 列表(RFC 6962 / RFC 9162)
监控目标自有域名与全部子域的签发记录
处置动作向 CA 报告并申请吊销,核对私钥暴露路径
覆盖范围只覆盖公共信任体系;自建内网 CA 的证书不会出现在日志里
注意同一张证书可能被多个日志收录,条数不等于证书数

典型使用场景

  • 上线前基线:先摸清域名历史上被签发过哪些证书,作为后续对照。
  • 定期巡检:按周或按月比对新增签发,发现异常立即处置。
  • 资产清点:用日志结果反推仍有服务在跑的旧子域。
  • 并购或外包交接:确认外部团队是否还持有可用的签发凭据。
  • 事故调查:证书被替换时,用签发时间线还原事件顺序。

查询域名签发记录

查询域名签发记录
# 查询包含子域的记录(注意:会把域名提交给第三方服务)
curl -s 'https://crt.sh/?q=%25.example.com&output=json' | python -m json.tool | head -40
# 看某张证书实际带了多少 SCT
openssl x509 -in cert.pem -noout -text | grep -A3 -i 'CT Precertificate'
# 把结果按签发者与时间排序后归档,便于下次比对新增项

告警项与处置

发现含义处置建议
出现非本公司 CA 签发的证书存在未授权签发向该 CA 报告并申请吊销,排查凭据泄露
出现陌生子域影子资产确认归属,下线或纳入证书管理
同一域名短期内大量签发自动化流程异常或误签核查签发流程与 ACME 账号权限
签发方已停用却仍有新记录旧账号或旧流程未清理回收账号权限并清理流水线
内部域名若使用公共 CA 签发证书,同样会暴露在公开检索里。敏感内网服务应改用自建 CA,避免子域结构与主机名对外可见。

易错点

  • 把日志条数当证书数量:一张证书可被多个日志收录,重复计数会让评估失真。
  • 发现异常签发后只吊销不排查私钥暴露路径:真正的风险点是攻击者是否已拿到私钥。
  • 把监控范围局限在主域名:子域往往是遗漏最多、风险最高的部分。
  • 向公开聚合服务查询内部域名:等于主动把资产清单交给第三方。

数据来源与参考

  • RFC 6962(Certificate Transparency)
  • crt.sh 公开查询入口
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌