マインクラフトLog4j問題ってどんな問題?
Minecraft(サーバー/クライアント両方)のモジュールとして使われている「Log4j」というライブラリに深刻な問題が見つかった(2022年12月11日現在)
Log4jは広く世の中で使われており(約30億のデバイス)、かつ脆弱性の内容がやばすぎるため影響超大
Log4jによって何が起こるか
悪意のあるコマンドによって、インターネット上から任意のプログラムをダウンロードして実行することができる
それによって、PCの破壊や個人情報を抜き出して流出させたり要は何でもできる状態にある(可能性がある)
例えば、マルチプレイ環境でチャットに悪意のあるコマンドを入力することでこれが実行される可能性があり、シングルプレイ環境でも悪意のあるModやリソースパックを導入した時も同様のことが起こってしまうようだ。
いやマジで危険。
影響を受けるバージョン
Minecraft1.7以降のすべてのバージョン
対策
さあこの危険な状況とりあえず何をすれば良いのか。
とりあえずは
①マルチサーバーは今すぐに停止し対策をとるまでは再開しない。(ただし、バージョンによってはすぐに対策がとれない場合がある)
②マルチサーバーにログインしている場合は今すぐに即ログアウトする
③外部のModやリソースパックなどを導入していないバニラ環境or12月以降に環境を変えていない場合はシングルプレイで遊ぶ分には影響を受けない。
ただし今後もずっと安全とは言えないので次項の対策を行う。
※こちらもバージョンによってはすぐに対策が取れない場合がある(マルチサーバーとは対照バージョンが異なることもある)
Log4j対策方法
以下の順番で確実に重ねて対策するとより確実であるが下記の[クライアント][サーバー]と照らしながら対策に当たってください。
①Log4jの最新リリース(2.15以降)ではこの問題が修正されているため2.4.1以前のバージョンが組み込まれている環境をアップデートする
②一部のLog4jのバージョンではJavaの起動オプションで
-Dlog4j2.fomatMsgNoLookups=true
を付与することで暫定的であるが回避ができる
③Java8u191以降では影響を受けない可能性があるので、Javaをアップデートした上でデフォルトの設定で使用する
④自鯖や超少人数のマルチサーバーにおいてはファイアウォール(AWSならセキュリティグループなど)を接続できるIPアドレスを厳格に制限する
対策[クライアント]
1.12以降で①の対策が公式からリリーズ済み
(公式ランチャーから起動し直すと対策版がダウンロードされる
Forge環境などはバニラで起動して再度導入が必要。
かつForge/OptifineなどのMod環境では②を起動オプションで入れたほうがよさそう
しかし悪意のあるModやリソースパックの可能性があるので信頼できないものは導入しないように注意してください。
とりあえずは情報のアプデが入るまではMod環境でのマルチは控えるのが一番かと思います。
それ以前のバージョンは情報のアプデを待ちましょう。③を行なっても良いが完全に問題がないかは確証が取れていなそうです。
対策[マルチサーバー]
Spigot/paper/Facricは最新ビルド①が対策済み
バニラサーバーは①が未対応。Minecraft1.3以降のバージョンでは②が可能(1.12.2はLog4jのバージョンが古いためこれでは対策できない模様)
それ以前のバージョンは情報のアプデを待ちましょう。③を行なっても良いが完全に問題がないかは確証が取れていなそうです。
④はプレイヤーログイン以外のModやリソースパックなど別の手段で攻撃されるリスクを排除できないので非推奨
その他
Log4j自体はMinecraftのjarの中にjarファイルとして組み込まれているようなので知識があれば自分で解決できる可能性があるが、それで本当に解決できるか別の問題が発生しないかなどは検証してみる必要がありそうです。
まとめ
2021年12月11日2時時点の情報であることとあくまで個人の意見であるということをご了承ください。