パスワードが推測される仕組み
ボットが他人のプレイヤー名で接続し、リストにあるパスワードで /login を入力していきます。よく使われるパスワード、プレイヤー名を変化させたもの、他のサーバーから流出したデータベースのパスワードなどです。多くのプレイヤーはどこでも同じパスワードを使うため、あるサーバーから流出したパスワードが別のサーバーで通ることはよくあります。
認証プラグインは、数回失敗したアドレスをBANします。これを回避するため、攻撃者はプロキシのリストから毎回新しいアドレスを使って試行します。
認証プラグインを設定する
対策の大部分は認証プラグインの役目です。AuthMe、nLoginなどのプラグインでは、次の設定を探してください:
- 失敗回数の制限と、パスワードを間違えたときのキック
- 連続して何度か失敗したときのアドレスの一時BAN
- ログインの制限時間(1分以内にパスワードを入力しなければキック)
- パスワードの最低文字数と、単純すぎるパスワードの禁止
- 正規版アカウントの持ち主の自動ログイン(パスワードが不要になります)
- プラグインが対応していれば、認証アプリによる二段階認証
スタッフを守る
管理者のアカウントは最も価値が高いため、最初に狙われます。スタッフのパスワードは長くし、他の場所で使わないようにしてください。プラグインが二段階認証に対応しているなら、少なくともスタッフには有効にしましょう。
スタッフのアカウントがどこから接続しているかを時々確認してください。新しい国や見慣れないプロバイダーからの接続があれば、詳しく確認したほうがよいでしょう。
プロキシを塞ぐ
アドレスごとの試行回数の制限が効くのは、攻撃者の持つアドレスが少ないうちだけです。Kordonは認証プラグインより前に、プロキシサーバー上で接続をチェックします。VPN、公開プロキシ、ホスティングのネットワークは通さず、保護レベル「厳格」(Premiumプランから)では住宅用プロキシも通しません。攻撃者が使えるアドレスが減り、推測はずっと遅くなります。
Kordonは、プレイヤーがどのパスワードを入力したかを見ず、ログインの失敗回数も数えません。それは認証プラグインの役目で、Kordonは攻撃者が使えるアドレスを減らすだけです。
総当たり攻撃の兆候
認証プラグインのログに、1つのプレイヤー名に対する誤ったパスワードが大量に記録されます。Kordonの接続履歴(Basicプランから)には、そのプレイヤー名で異なるアドレスや国から短時間の接続が大量に並びます。
アカウントがすでに乗っ取られた場合
- 認証プラグインの管理者コマンドでアカウントのパスワードを変更し、そのアカウントをサーバーからキックします。
- 行動ログ(CoreProtectなど)で、プレイヤーの名前で何が行われたかを確認します。
- 侵入者が接続したアドレスを、期間を指定してブラックリストに追加します(Proプランから)。
- このパスワードを使っていたすべての場所で変更するよう、プレイヤーに伝えます。