v1.7.0
Security
- チャンネルチャットの権限の問題を修正しました (GHSA-7gmf-j543-53pr).
/lc channel infoで,どのプレイヤーでも private チャンネルのオーナーとメンバーを見られ,Tab 補完にも表示されていました.private チャンネルは,メンバーとlunaticchat.channelbypassを持つプレイヤーにだけ表示されるようになりました./lc channel inviteはプレイヤーをすぐに追加してアクティブチャンネルも切り替えていたため,どのプレイヤーでも他のプレイヤーを自分のチャンネルに引き込み,その次の発言を受け取れました.招待を送るだけになり,招待されたプレイヤーが 5 分以内に/lc channel join <channelId>を実行すると参加します.承諾するまでアクティブチャンネルは変わりません.- チャンネルのモデレーターが,オーナーや他のモデレーターをキック・BAN できました.
/lc channel kickとbanは,自分より下のロールのプレイヤーにだけ使えるようになりました.詳しくは ロールと権限 を参照してください.
- 偽造されたサーバー間メッセージへの保護を追加しました (GHSA-4p78-89rh-8px5).
- 古い Velocity プラグインの後ろでは,改造クライアントを使うプレイヤーが,任意の名前でサーバー間チャットや DM を送る,サーバーの告知に見せかける,サーバーを止める,サーバーログに偽の行を書き込む,といったことができました.
- 他サーバーからのグローバルチャットと DM は,Velocity との接続が確立してから表示されるようになりました.
/lcv statusがHANDSHAKINGやFAILEDの間は,他サーバーからのメッセージは表示されません. - 他サーバーから届いた名前やメッセージに含まれる書式コード (
§) と改行は,反映せずに取り除くようになりました.features.velocityIntegration.serverNameに色コードを書いている場合,他サーバーでは色なしで表示されます. - こうしたメッセージで,サーバーが止まったりサーバーログに偽の行を書き込まれたりすることはなくなりました.
Improvements
- プレイヤーが参加するたびに,オンラインの全プレイヤーの spy 権限を確認し直すことがなくなりました.オンライン人数が多いほど重くなっていた処理です.
- オンライン中に spy 権限を外されたプレイヤーには,すぐに spy のコピーが届かなくなります.
- オンライン中に spy 権限を与えられたプレイヤーは,再参加した後から spy のコピーを受け取ります.
/lc channel kick,ban,unban,mod,ownershipで,プレイヤー名を調べる間にサーバーが止まるおそれがなくなりました.- 対象はサーバーが既に知っているプレイヤーの中からだけ探します.名前を変えてからまだ参加していないプレイヤーは,前の名前で指定してください.
- 内部的なコードの整理を行いました.
Notes
- Velocity 連携を使っている場合は,Velocity プラグインも v1.4.0 に更新してください.GHSA-4p78-89rh-8px5 の修正の本体は Velocity プラグインにあり,Paper プラグインだけを更新しても解消しません.
- 承諾されていないチャンネルの招待は,サーバーを再起動すると消えます.