私はパスワードについて奇妙なことに気づきました(私によれば)。たとえば、ログイン中に間違ったパスワードを入力すると、システムから通知されるまでに数秒の遅延が発生します。 sudo
をしようとすると パスワードが間違っていると、シェルが「申し訳ありませんが、もう一度やり直してください」と表示されるまで待つ必要があります。
間違ったパスワードを「認識する」のになぜこんなに時間がかかるのだろうか?これは私が使用しているいくつかのディストリビューション(さらにはOSX)でも見られるので、ディストリビューション固有のものではないと思います。
承認された回答:
これはセキュリティ上の問題であり、実際に実現するのにそれほど時間はかかりません。これが解決する2つの脆弱性:
-
これにより、ログインの試行が抑制されます。つまり、誰かがシステムをクラックしようとするのと同じ速さでシステムを攻撃することはできません(1Mは1秒間に試行しますか?わかりません)。
-
クレデンシャルが正しくないことを確認した直後にそれを行った場合は、クレデンシャルが無効になるまでにかかった時間を使用して、クレデンシャルの一部が正しいかどうかを推測し、推測時間を大幅に短縮できます。
これらの2つのことを防ぐために、システムはそれを実行するのに一定の時間がかかるだけです。PAMを使用して待機時間を構成できると思います(Michaelsの回答を参照)。
セキュリティエンジニアリング(2ed、amazon | 1ed、free)は、これらの問題のより良い説明を提供します。