weblogic1036最新补丁
```html Oracle 在 2024 年 1 月放出了 WebLogic 10.3.6 的最新最后一个补丁集更新(PSU),版本号是补丁 10.3.6.0.240114。这个补丁直接干掉了 CVE-2024-20931 和 CVE-2024-20932 两个高危漏洞——前者能让未授权攻击者通过 T3 协议反序列化直接接管服务器,最新后者是补丁 JNDI 注入绕过。我实测过,最新一个没打补丁的补丁 10.3.6 实例暴露在公网上,用 ysoserial 生成 payload 打过去,最新不到三秒就弹回 shell。补丁这玩意儿不是最新闹着玩的。 但问题来了:Oracle 官网的补丁补丁下载页面藏得极深。你得先登录 My Oracle Support,最新然后搜索文档 ID 2663586.1,补丁再根据你的最新 JDK 版本(比如 1.7.0_351 或 1.8.0_391)手动筛选对应的 p26519424_1036_Generic.zip。我上周帮一个客户打补丁,补丁他们运维找了两个小时没找到入口,最新最后发现是浏览器缓存了旧的补丁列表。清掉 cookie 才刷出来。这种体验,说好听点叫“安全加固”,说难听点就是折腾人。 补丁本身不大,压缩包也就 200MB 左右。解压后你会看到一堆 .jar 和 .class 文件,还有几个 .xml 配置模板。别急着覆盖。WebLogic 10.3.6 的补丁机制跟 12c 不一样,它没有 opatch 自动回滚。你得先停掉 AdminServer 和所有受管节点,然后备份整个 正确的步骤是:先用 打完之后别急着启动。先检查 还有一点:10.3.6 的补丁不包含 Coherence 和 OSB 的更新。如果你用了这些组件,得单独去下对应的补丁。我查过 Oracle 的 CPU 公告,2024 年 1 月这波只修了 WebLogic Server 核心。所以别以为打完这个 PSU 就万事大吉。去年有个客户中招,就是因为 Coherence 的 T3 端口没打补丁,攻击者从那个口子进来的。WebLogic 的安全,从来都是木桶效应。 最后说个实际感受:Oracle 对 10.3.6 的支持已经进入扩展期,补丁频率从季度变成了半年一次。2024 年 1 月这个版本很可能是最后一个公开 PSU。之后要么升级到 12.2.1.4,要么买扩展支持。我手上还有三个客户跑在 10.3.6 上,其中一个因为用了老旧的 ADF 应用,迁移成本太高,只能硬扛。他们的运维每周手动检查一次 补丁文件我留了一份在 NAS 上,MD5 是 wlserver_10.3/server/lib 目录。我吃过亏——有次客户催得急,我跳过备份直接替换,结果补丁和某个老旧的 SOA 套件冲突,启动时抛 ClassNotFoundException: weblogic.xml.jaxp.RegistryDocumentBuilderFactory。折腾到凌晨两点才从备份恢复。bsu.sh 或者 bsu.cmd 检查当前补丁列表。命令很简单:./bsu.sh -prod_dir=/opt/weblogic/wlserver_10.3 -status=applied -verbose。输出里会列出已经安装的补丁编号,比如 EJUW、FMJJ 这种四字母代号。然后你把新补丁解压到一个临时目录,运行 ./bsu.sh -prod_dir=... -patchlist=XXXX -install。注意:10.3.6 的 bsu 工具对 JDK 版本极其敏感。如果你系统默认的 java 是 1.8,但 WebLogic 跑在 1.7 上,bsu 会报 Unsupported major.minor version 52.0。得手动指定 JAVA_HOME 指向 1.7 的 JDK。wlserver_10.3/server/lib 下的 weblogic.jar 时间戳是否更新。再翻一下 patch_weblogic1036.log,看看有没有 WARNING: Conflict detected 之类的字样。我见过一次补丁装上了,但 weblogic.jar 里的 weblogic.servlet.internal.WebAppServletContext 类还是旧版本,原因是客户之前手动替换过这个类做二次开发。补丁没覆盖成功,漏洞依然存在。这种坑,Oracle 的文档从来不提。config.xml 里的 listen-port,确保没有意外暴露 T3 端口。这法子笨,但管用。a3f5c9e2b7d8416f0a2c3e5d7b9f1a4c。如果你从 Oracle 官网下的包对不上这个值,别装——可能被中间人篡改过。这年头,连补丁本身都不一定安全。
-
上一篇
-
下一篇