该页面的内容不代表Mojang Studios或Minecraft Wiki的官方意见。
警告:Apache Log4j2 远程代码执行漏洞(CVE-2021-44228)十分严重。
此漏洞可能导致计算机资料安全受到严重威胁,请务必重视。
本教程介绍了修复Apaches Log4j2相关漏洞的方法。
漏洞缘由
开源的Java日志记录工具Apaches Log4j2被曝出存在高危远程代码执行漏洞。由于Minecraft: Java版的大部分版本使用了使用了该日志记录工具,极大多数Minecraft玩家都可能因该漏洞而遭受攻击。
漏洞危害
攻击者可利用该漏洞在未经授权的情况下在玩家电脑上执行任意指令,其中不乏下载病毒、占用系统资源、窃取隐私等恶意命令。由于该漏洞存在范围广、利用门槛低,会给玩家带来极高的安全隐患。
影响范围
- Minecraft: Java版 13w39a~1.18.1-rc2全部客户端与服务端,包括:
- 原版客户端与服务端;
- 安装了模组的客户端与服务端;
- Paper、Spigot等大多数第三方服务端;
- 其他满足上述范围的Java版客户端与服务端。
以下版本不受影响:
- Minecraft: 基岩版;
- Minecraft: Java版 13w38c及以下版本;
- Minecraft: Java版 1.18.1-rc3及以上版本;
- BungeeCord服务端。
修复方式
原版客户端
- Minecraft官方启动器
- 关闭游戏、重新启动启动器。已修复的版本会自动下载。
- 第三方启动器
- 关闭游戏,将启动器更新到最新版本,并留意更新日志中是否说明修复了此漏洞。如果没有,请参照#临时防御方案修复。
模组加载器
- Fabric
- 将Fabric Loader更新到0.12.9及以上版本。
- Forge
- 1.18及以上版本的用户请将Forge更新到38.0.17及以上版本。
- 1.17.1及以下版本的Forge已不再安全,请修复启动器,或参照#临时防御方案修复。
- 其他模组加载器
- 由于多数其他模组加载器已停更,它们都已不再安全,请修复启动器,或参照#临时防御方案修复。
原版服务端
- 1.18
- 关闭服务端,升级到1.18.1,或者按照1.17的方法修复。
- 1.17
- 关闭服务端,在启动脚本中添加JVM参数:
-Dlog4j2.formatMsgNoLookups=true - 1.12~1.16.5
- 关闭服务端,下载此文件到服务器的工作路径。然后在启动脚本中加入JVM参数:
-Dlog4j.configurationFile=log4j2_112-116.xml - 1.7~1.11.2
- 关闭服务端,下载此文件到服务器的工作路径。然后在启动脚本中加入JVM参数:
-Dlog4j.configurationFile=log4j2_17-111.xml
第三方服务端
- Paper、WaterFall、Velocity、Spigot
- 这些服务端均已发布紧急更新,请关闭服务端,更新到最新版本。
- BungeeCord
- 不受影响,无需操作。
- 其他服务端
- 请先关闭服务端,然后参照MCBBS上的帖子修复。如果你使用的服务端没有在帖子中列出,请将服务端更新到最新版本,并留意更新日志中是否说明修复了此漏洞。如果没有,请参照#临时防御方案修复。
临时防御方案
本段参考了火绒安全实验室发布的专栏:https://www.bilibili.com/read/cv14365632
- 如果可以,添加JVM参数:
-Dlog4j2.formatMsgNoLookups=true - 将系统环境变量
FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS设置为true
敬请参阅
- 官方网站上的公告:"Important Message: Security vulnerability in Java Edition"
- MCBBS上的公告翻译:“重要消息:Java 版中的安全漏洞”
- MCBBS上的服务器修复指南:【2021.12.10】 Log4j 0day CVE 漏洞警示及修复指南
- 火绒安全实验室的专栏:附修复建议| Apache Log4j 远程代码执行漏洞通告
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||