web-dev-qa-db-ja.com

洗練された辞書攻撃をグロッキー

私のサーバーの1つがsshに対して高度な辞書攻撃を受けているようです。パスワードの失敗により、サーバー上で多数のユーザー名がアルファベット順に試されているのがわかります。

これについての珍しいことは次のとおりです。

  • 2分ごとに1回だけ試行されます
  • すべての試みは異なるIPアドレスから来ます

これを行う方法さまざまなIPアドレスから効果的にブロックできますかを理解するのを手伝ってもらえますか?攻撃の持続が遅い(アルファベットを通過するのにおそらく数か月かかる)ということは、何か特定のことを意味しますか?

また、他の誰かが現在パブリックsshサーバーで同様のアクティビティを確認しているかどうかも知りたいです(つまり、私たちは特定のターゲットですか、それともこの攻撃者はこの攻撃で何千ものsshサーバーを覆っていますか?)

また、私が明らかにする方法はありますかどのパスワード(またはハッシュ)が試行されているか?それぞれの名前が1回か2回しか試行されていないことに気付きました。私仮定彼らは「パスワード」またはユーザーのユーザー名を試しています-しかしこれを確認できますか?

4
Brent

これに対する簡単な答えはパスワードを使用しないでください!!!

あなたはできる:

  • sshキー を使用します。セキュリティを強化するために暗号化する
  • Mobile-OTP のようなワンタイムパスワードジェネレータを使用します
  • 使用 kerberos

パスワードを使用する必要がある場合は、インターネット全体ではなく、信頼できるサブネットからのみパスワードを許可してください。また、22以外のポートでsshデーモンを実行すると便利です。通常はそのようなことはお勧めしませんが、攻撃の量を減らすことができれば、はるかに優れています。


あなたの特定の懸念に答えて:

  • 私が実行している、公開されているsshサーバーを持つホストに対するこの種の攻撃を見てきました。
  • 過去の経験から開発されたユーザー名/パスワードの辞書を使用しているのではないかと思います。たとえば、私のログにはがあります
    • ユーザー「ftp」に対する18回の試行
    • ユーザー「フォーラム」に対する23回の試行
    • ユーザー「bernard」の場合は3
    • ユーザー「bret」の場合は1
  • 実際のサイト固有のログインを使用するこの種の攻撃も見たことがありますが、それらはおそらくそのサイトの広く開かれたldapサーバーから選別されたものです(大学、大好きです!)
  • これらの攻撃は、おそらく、印象的な集中制御を備えた ゾンビ コンピューターから発生しています。
  • これらの攻撃は、1〜5分に1回、1日中、毎日発生しています。
  • Sshdをトラスして、攻撃者が試みているパスワードを収集するのが簡単かどうかを確認しようとしましたが、コードにパッチを適用する必要があるようです。
    • これら 人々はまさにそれを行い、パスワードは多くの場合、ユーザー名の順列、またはsqlやadminなどのよく知られたパスワードであることがわかりました。
6
chris

2008年に開始された「スローブルート」ボットネット攻撃の説明と分析は次のとおりです。 スローブルート最終ラウンドアップ

このサイト での同じ期間からの他の議論は示唆している

Fail2banは、サーバーのセキュリティを向上させるための1つのツールにすぎません。もちろん、最初のステップは、パスワードの使用を避け、代わりにサーバーキー認証を使用することです。さらに、特定のIPへの許可されたトラフィックを制限し、IP範囲を禁止し、IPテーブルを使用し、rsync-mirrors.uceprotect.netなどのブラックリストを使用して、既知のSSHハッカーオリジンおよびオリジンネットワークのiptablesを更新します。上記の3レベルのブラックリストの詳細については、uceprotect.netを参照してください。

この種の試みに関連して私が提案した他の項目は、失敗した試みを監視し、ソースIPをブロックすることを推奨しています-最終的には同じIPが別のプローブに使用されるため、存在しないアカウントでログインしようとした後に検出してブラックリストに登録しますファイアウォールルールの処理が増える代わりに、脅威を徐々に減らします。また、1回の接続試行後にブロックしないのが最善の場合もあります。タイプミスが発生します。

3
fencepost

最善の答えは、それについて何もしないことです。ユーザーが8文字以上の強力なパスワードを持っている限り、そのレートでは、ブルートフォース攻撃に約3億年かかる可能性があります。

3
JamesRyan

実際の実装についてはよくわかりませんが、一般的なアドバイスは次のとおりです。

パスワードを監査し(john the ripperなどを使用)、ログインのタイムアウトを増やすことができるかどうかを確認します。

2
John Gietzen

Denyhostsまたはfail2banをインストールします-特定の数の攻撃の後、IPによってブロックされます。 denyhostsは/etc/hosts.denyで動作し、fail2banはiptablesルールで動作すると思います。

2
Aaron Brown