Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
Advertisement
該頁面的內容不代表Mojang StudiosMinecraft Wiki的官方意見。
EnderdragonFace
警告:Apache Log4j2 遠程代碼執行錯誤(CVE-2021-44228)十分嚴重。

此錯誤可能導致計算機資料安全受到嚴重威脅,請務必重視

本教學介紹了修復Apache Log4j2相關錯誤的方法。

錯誤緣由

開源Java日誌框架Apache Log4j2被曝出存在高危遠程代碼執行錯誤。由於Java版的大部分版本使用了使用了該日誌框架,絕大多數Minecraft玩家都可能因該錯誤而遭受攻擊。

錯誤危害

攻擊者可利用該錯誤在未經授權的情況下在玩家電腦上執行任意指令,其中不乏下載病毒、佔用系統資源、竊取私隱等惡意指令。由於該錯誤存在範圍廣、利用門檻極低,會給玩家帶來極高的安全隱患。

影響範圍

註:此處只列舉了被影響的Minecraft遊戲版本。實際上所有使用了此日誌框架的程式都受此錯誤影響。

13w39a~1.18.1-rc2全部用戶端與伺服器端,包括:

  • 原版用戶端與伺服器端
  • 安裝了模組的用戶端與伺服器端
  • Paper、Spigot等大多數第三方伺服器端
  • 其他滿足上述範圍的Java版用戶端與伺服器端

以下版本不受影響:

檢驗方式

  • 用戶端可以在遊戲內聊天框輸入${jndi:ldap://www.mcbbs.net}來檢驗是否存在log4j錯誤。如果輸入後出現短暫卡頓現象,則說明錯誤存在(但要注意的是,某些用戶端輸入其他文字也會卡頓一下,所以應當嘗試先輸入普通聊天文字再嘗試;而離線模式本身就不應存在卡頓現象);如果沒有出現卡頓現象,則說明用戶端是安全的。
  • log4j 2.15.0-rc2及更新的版本已經修復了此錯誤,請檢查你的用戶端是否套用了新的log4j,可以在.minecraft\libraries\org\apache\logging\log4j查看;然後瀏覽遊戲版本的.json檔案,檢查啟動器是否使用了此版本的log4j進行啟動,檔案位置在.minecraft\versions\游戏版本号裡。

修複方式

原版用戶端

Minecraft官方啟動器
  • 關閉遊戲、重新啟動啟動器。已修復的版本會自動下載。
第三方啟動器
  • 關閉遊戲,將啟動器更新到最新版本,並留意更新日誌中是否說明修復了此錯誤。如果沒有,請參照#臨時防禦方案修復。
  • PCL、HMCL、BakaXL等第三方啟動器均已針對此錯誤進行了緊急更新,如果你正在使用這些啟動器,請儘快升級到最新版本。

模組載入器

Fabric
  • 將Fabric Loader更新到0.12.9及以上版本。
Forge
  • Forge聲明其多個版本已包含針對此次log4j錯誤的緊急更新,推薦的版本:
    • 1.18-38.0.17
    • 1.17.1-37.1.1
    • 1.16.5-36.2.20
    • 1.15.2-31.2.56
    • 1.14.4-28.2.24
    • 1.13.2-25.0.221
    • 1.12.2-14.23.5.2856
  • 1.12.2與1.16.5版本可嘗試安裝此修復mod來進行修復。
其他模組載入器
  • 由於多數其他模組載入器已停更,它們都已不再安全,請修復啟動器,或參照#臨時防禦方案修復。

原版伺服器端

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上的帖子修復。如果你使用的伺服器端沒有在帖子中列出,請將伺服器端更新到最新版本,並留意更新日誌中是否說明修復了此錯誤。如果沒有,請參照#臨時防禦方案修復。

臨時防禦方案

以下方案僅適用於使用log4j 2.10.0及以上版本的用戶端或伺服器端[1]。即1.17-pre11.18.1-rc2的版本。

  • 如果可以,加入JVM參數:-Dlog4j2.formatMsgNoLookups=true
  • 將系統環境變數FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS設定為true

敬請參閱

Advertisement