ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

2. 编程语言-Java-JDK安全漏洞

2. 编程语言-Java-JDK安全漏洞

文章目录

  • 前言
  • 一、Java高危漏洞:CVE-2026-91403
    • 一、官方公告
    • 二、这个漏洞到底是什么?
    • 三、哪些版本受影响?
      • 公告点名的(已给补丁线)
      • 没写进表的老版本呢?
    • 四、怎么做?(按这个顺序)
      • 1)查版本
      • 2)能升就升,并重启 JVM(首选)
      • 3)临时加固(升不了,或官方要求升级后仍要做)
      • 4)自查 + 预发验证
    • 五、读完你该记住什么?

前言

最近爆出的那个Java高危漏洞:CVE-2026-91403,大家应该都有关注到了吧!本文跟大家聊聊如何处理!


一、Java高危漏洞:CVE-2026-91403

一、官方公告

CVE-2026-91403 官方公告

Oracle 这次发的是Security Alert,不是普通更新说明。公告核心可以压缩成下面几句:

CVE-2026-91403:提供 Java 更新,使受影响的eMudhra 相关中间 CA 证书不再被信任。
应对方式:升级到最新 Java,或按官方建议做缓解。
组件在JSSE;可远程利用、无需登录;CVSS9.1。

读到这里,多数人会马上问三件事:

  1. 这到底是啥意思?

  2. 我的 JDK 算不算?

  3. 今天要做什么?

给大家讲清楚:下面就按这个疑问往下走。


二、这个漏洞到底是什么?

漏洞本质:私钥泄露,假证书可能被当真

一句话:

中间 CA 的私钥泄露了;JDK 信任库如果还认它,假证书就可能被当真。

更直白一点:

  • 正常:HTTPS / 验签时,Java 查这张证书是不是可信机构签的。

  • 出事:eMudhra 相关8 个中间 CA 私钥已泄露(官方表述)。

  • 风险:攻击者可能伪造看起来合法的证书;你的 Java 程序若仍信任那条链,就可能信错对象。

所以这不是「Java 被远程随便执行代码」那种洞,而是信任被破坏:该拦的假身份,拦不住。


三、哪些版本受影响?

公告点名 vs 更老版本同样风险

公告点名的(已给补丁线)

产品版本
Oracle Java SE8u511、8u511-perf、11.0.33、17.0.21、21.0.13、25.0.5、27.0.1
GraalVM for JDK17.0.21、21.0.13
GraalVM EE21.3.20

没写进表的老版本呢?

观点要鲜明:没点名 ≠ 没风险。

Oracle 写明:补丁只保证支持期内版本;更早版本未逐一测试,但很可能同样受影响,建议升到仍受支持的版本。

所以常见的8u202、8u391等老 JDK 8,按「可能受影响」处理,不要侥幸。


四、怎么做?(按这个顺序)

四步行动:查版本 → 升级重启 → 临时加固 → 预发验证

1)查版本

java -version

服务器、容器、流水线里的 JDK 都要查;有几套处理几套。

2)能升就升,并重启 JVM(首选)

Oracle 已给出修复构建,例如:

  • 8u511 b32

  • 11.0.33.0.2/17.0.21.0.2/21.0.13.0.2

  • 25.0.5.0.2/27.0.1.0.2

按 Patch Availability 文档安装。不重启 = 没修完。

3)临时加固(升不了,或官方要求升级后仍要做)

即使已升到上述版本,ops.java/emudhra 仍要求重启前做下面二选一:

方案 A:备份后,从cacerts删除相关根证书

  • JDK 11+:$JDK_HOME/lib/security/cacerts

  • JDK 8:$JDK_HOME/jre/lib/security/cacerts

# JDK 11+ keytool -delete -cacerts -alias "emsigneccrootcag3 [jdk]" keytool -delete -cacerts -alias "comodoaaaca [jdk]"

方案 B:打开吊销检查

-Dcom.sun.net.ssl.checkRevocation=true -Dcom.sun.security.enableCRLDP=true

4)自查 + 预发验证

  • 跑官方CheckCerts.java(JDK 8+)

  • 预发重点测:对外 HTTPS、双向 TLS、验签

  • 看日志是否出现SSLHandshakeException、PKIX

  • 事先备份旧 JDK 和cacerts,便于回滚


五、读完你该记住什么?

疑问答案
官方说了啥?eMudhra 相关中间证书不可再信;升级或按官方缓解
本质是啥?私钥泄露 → 假证书可能被 JDK 当真
我中招吗?点名版本有补丁;更老 JDK 也很可能有风险
今天做什么?查版本 → 升级重启 → 临时加固 → 预发验证


本文的引用仅限自我学习如有侵权,请联系作者删除。
参考知识
Java 高危漏洞!HTTPS 信任被破坏,升级和临时办法一次讲清


RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进