乐趣区

关于spring:Confluence的CVE202222965漏洞临时修复

背景

2022 年 3 月 31 日,Spring 官网公布平安布告,披露 CVE-2022-22965 Spring Framework 近程代码执行破绽。官网已公布平安版本 5.3.18/5.2.20 修复该破绽。

而后查看下来,发现 Confluence 又一次中招啦。本想着等 Confluence 官网公布新版本间接更新解决,然而都一个月了如同也没动静,预计是这个破绽被利用的话须要满足很多条件。所以就查了查长期补救方法,最简略的就是更换运行软件的 Java 版本了,只有 JDK 版本 < 9 就没有问题啦。

查看 Confluence 运行 Java 版本

我用的零碎是 Ubuntu,在 Confluence 装置时,默认会带有 Java,但不会增加至环境变量。所以执行

java -version

时并没有反馈。

Confluence 装置目录,找到文件 setjre.sh,查看运行的 Java 版本。

1、Go to <install-directory>/bin/setjre.sh file (Linux)
2、Scroll to the bottom of the file and look for a line similar to the following.
The file path may be different in your file.

In Linux:
JRE_HOME="/opt/atlassian/confluence/jre/"; export JRE_HOME

依照上述门路,找到 Confluence 应用的 Java 版本:

如图显示应用的 JDK11

装置 Java 并批改 Confluence 应用的版本

我抉择了 JDK8

apt install openjdk-8-jre-headless

而后批改 setjre.sh 文件

vim /opt/atlassian/confluence/bin/setjre.sh

批改后果:

保留后重启 Confluence 就能够应用装置的 JDK8 运行啦,这就长期修复了 BUG。

须要留神的是,每次降级 Confluence 后,文件 setjre.sh 都会被笼罩。也就是说如果官网降级后这个不问题还存在,须要再次批改

参考

https://zhuanlan.zhihu.com/p/498150717
https://confluence.atlassian.com/doc/change-the-java-vendor-or-version-confluence-uses-962342397.html

退出移动版