新しいパスワードが古いパスワードとあまりにも似ているというメッセージを受け取ったことがある場合は、Linuxシステムがそれらがあまりにも似ていることをどのように「認識」しているかについて興味があるかもしれません。今日のスーパーユーザーのQ&A投稿では、好奇心旺盛な読者に何が起こっているのかを「魔法のカーテン」の裏側で垣間見ることができます。
今日の質疑応答セッションは、コミュニティ主導のQ&AWebサイトのグループであるStackExchangeの下位区分であるSuperUserの好意で行われます。
スクリーンショットの礼儀 マーク・ファラルドー(Flickr) 。
質問
スーパーユーザーリーダーのLeNoobは、Linuxシステムがパスワードが互いに類似しすぎていることをどのように「認識」しているかを知りたがっています。
さまざまなLinuxマシンでユーザーパスワードを数回変更しようとしましたが、新しいパスワードが古いパスワードとよく似ていると、オペレーティングシステムから類似しすぎていると言われました。
私はいつも疑問に思っていましたが、オペレーティングシステムはこれをどのように知っていますか?パスワードはハッシュとして保存されていると思いました。これは、システムが新しいパスワードを古いパスワードと類似性について比較できる場合、実際にはプレーンテキストとして保存されることを意味しますか?
Linuxシステムは、パスワードが互いに類似しすぎていることをどのように「認識」しますか?
答え
スーパーユーザーの寄稿者slhckが私たちに答えを持っています:
passwdを使用する場合は、古いパスワードと新しいパスワードの両方を指定する必要があるため、プレーンテキストで簡単に比較できます。
パスワードは、最終的に保存されるときに実際にハッシュされますが、それが発生するまで、パスワードを入力するツールはパスワードに直接アクセスできます。
これはの機能です PAMシステム これは、passwdツールのバックグラウンドで使用されます。 PAMは、最新のLinuxディストリビューションで使用されています。より具体的には、pam_cracklibはPAMのモジュールであり、類似点と弱点に基づいてパスワードを拒否できるようにします。
安全でないと見なすことができるのは、類似しすぎているパスワードだけではありません。ザ・ ソースコード パスワードが回文であるかどうかや、2つの単語間の編集距離など、確認できる内容のさまざまな例があります。アイデアは、パスワードを辞書攻撃に対してより耐性にすることです。
を参照してください pam_cracklibのマンページ 詳細については。
以下にリンクされているトピックスレッドを介して、SuperUserでの活発な議論の残りを必ず読んでください。
説明に追加するものがありますか?コメントで音を立ててください。他の技術に精通したStackExchangeユーザーからの回答をもっと読みたいですか? ここで完全なディスカッションスレッドをチェックしてください 。