アカウント名:
パスワード:
ちなみに辞書攻撃可能なパスワードだと市販PC程度のスペックの マシンでも 100ms程度 で破られます。みんなが考えているよりも簡単です。 そんなに難しくもなく、ちょっとヒントを言うと 去年のCRYPTO2001 ( CRYPTO2002 [iacr.org] ) でのランプセッションの余興に パスワード破りのデモがあったのですが、それを一般のシステムに 応用すればすぐできます。 京都大学の
Fool Proofな目的に作ったのではなく、純粋に遷移で 見ているので12345678とか%%%%%%%%というのも いい点数が出てしまいますが、まあ、 そーゆーパスワードを選ぶ人は何をやっても救えない というスタンスでやっています。ちなみにランダムな8桁の数字は結構、丈夫ですよ。
ちなみにランダムな8桁の数字は結構、丈夫ですよ。
数字ばかりのパスワードは試す人がたくさんいそうで、すぐに破られる気がするのですが。何と比較して丈夫なのでしょうか。
なるべく長く / 英大文字・英小文字・数字・記号を入れる / 同じ文字を何度も使わない / 英語・日本語などの単語になっていない
というだけでは十分ではなく パスワードクラックの辞書には載っていないこと が必要です。 フランス語、ドイツ語、イタリア語、スペイン語などの卑しい言葉で、かつ文字O(オー)を数字0(ゼロ)などに変えるありがちな方法は 上記の要件は満たしますが、辞書攻撃ではたぶんダメでしょう。 ちなみにパスワードクラックの辞書は数十万、 あっても数百万の範囲ですので、8桁ランダム数字の方が それよりは少しは期待がもてます。 また人間が選ぶランダムな文字列でという要件を入れても、 人間の脳は乱数生成器を持っていないので:-) 人間が文字を意図的に選択するという点で弱くなる可能性があります。 それを避けるために、たとえばmkpasswdというプログラムを使ってパスワード候補の文字列生成したり(これはGNUのmkpasswdではなくNISTの人が作ったもの)、 それがなかったら、 % cat /dev/urandom | mimencode |head -1 として表示される文字列から任意の長さを選ぶとか人間の恣意的な データが含まれないようにした方がいいでしょう。 あとはその人の運次第。
また人間が選ぶランダムな文字列でという要件を入れても、 人間の脳は乱数生成器を持っていないので:-) 人間が文字を意図的に選択するという点で弱くなる可能性があります。
それを避けるために、たとえばmkpasswdというプログラムを使ってパスワード候補の文字列生成したり(これはGNUのmkpasswdではなくNISTの人が作ったもの)、 それがなかったら、
% cat /dev/urandom | mimencode |head -1
として表示される文字列から任意の長さを選ぶとか人間の恣意的な データが含まれないようにした方がいいでしょう。 あとはその人の運次第。
パスワードクラックの辞書には載っていないこと
パスワードクラックの辞書は数十万、あっても数百万の範囲
従って「ランダムな8桁の数字は結構、丈夫」などという誤解を招くような表現は避けるべきです。
たしかここだけ見ると誤解されかねないかも 知れませんね。推薦するの作り方はLinuxや*BSDだと
「8桁の数字は一般的な辞書攻撃の対象とはなりにくい。しかし、時と場合によっては対象となり得るし、また総当り攻撃に弱い。したがって8桁の数字のみからなるパスワードは利用するべきではない。」などという表現が妥当です。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている -- あるソフトウェアエンジニア
弱いパスワードを登録できた時点で負け (スコア:5, 参考になる)
ちなみに辞書攻撃可能なパスワードだと市販PC程度のスペックの マシンでも 100ms程度 で破られます。みんなが考えているよりも簡単です。 そんなに難しくもなく、ちょっとヒントを言うと 去年のCRYPTO2001 ( CRYPTO2002 [iacr.org] ) でのランプセッションの余興に パスワード破りのデモがあったのですが、それを一般のシステムに 応用すればすぐできます。 京都大学の
すずきひろのぶ
Re:弱いパスワードを登録できた時点で負け (スコア:0)
引用された関数だと、
Re:弱いパスワードを登録できた時点で負け (スコア:1)
Fool Proofな目的に作ったのではなく、純粋に遷移で 見ているので12345678とか%%%%%%%%というのも いい点数が出てしまいますが、まあ、 そーゆーパスワードを選ぶ人は何をやっても救えない というスタンスでやっています。ちなみにランダムな8桁の数字は結構、丈夫ですよ。
すずきひろのぶ
Re:弱いパスワードを登録できた時点で負け (スコア:1)
パスワードを決めるときには
- なるべく長く
- 英大文字・英小文字・数字・記号を入れる
- 同じ文字を何度も使わない
- 英語・日本語などの単語になっていない
にするようにとよく言われます。これらは守るべきです。たとえこれらの情報が破る側にヒントとして与えられたとしても、これだけでは探索空間が大きすぎて、ちょっとやそっとでは破れません、たぶん。 :-)「破る人間の裏をかいて」数字ばかりとか記号ばかりとか長さ3文字とかにしている人はきっといるだろうと思うのですが、それはやっぱり危険です。破る側がちょっと「普通でないもの」を試したらすぐに破られてしまいますから。
鵜呑みにしてみる?
Re:弱いパスワードを登録できた時点で負け (スコア:1)
というだけでは十分ではなく パスワードクラックの辞書には載っていないこと が必要です。 フランス語、ドイツ語、イタリア語、スペイン語などの卑しい言葉で、かつ文字O(オー)を数字0(ゼロ)などに変えるありがちな方法は 上記の要件は満たしますが、辞書攻撃ではたぶんダメでしょう。 ちなみにパスワードクラックの辞書は数十万、 あっても数百万の範囲ですので、8桁ランダム数字の方が それよりは少しは期待がもてます。
また人間が選ぶランダムな文字列でという要件を入れても、 人間の脳は乱数生成器を持っていないので:-) 人間が文字を意図的に選択するという点で弱くなる可能性があります。
それを避けるために、たとえばmkpasswdというプログラムを使ってパスワード候補の文字列生成したり(これはGNUのmkpasswdではなくNISTの人が作ったもの)、 それがなかったら、
% cat /dev/urandom | mimencode |head -1
として表示される文字列から任意の長さを選ぶとか人間の恣意的な データが含まれないようにした方がいいでしょう。 あとはその人の運次第。
すずきひろのぶ
Re:弱いパスワードを登録できた時点で負け (スコア:1)
// クラックする際に参考にするという意味ではなく。 :)
鵜呑みにしてみる?
なになっとくしてんすかー (スコア:0)
ランダムな8桁の数字によるパスワードが、辞書に載ってる単語によるパスワードより辞書攻撃に強いのはあたりまえです。ランダムなんですから。
数字のみでも辞書に載っていたら簡単にやられます。確かに現状では数字のみの単語はあまり辞書には載っていませんが、今後加えられる可能性がないわけではありませんし、また今回のケースのように大学の学生アカウントであれば、攻撃者は当然学生IDなどの辞書化を行うでしょう。
Re:なになっとくしてんすかー (スコア:0)
推奨するパスワードの決め方 (スコア:1)
従って「ランダムな8桁の数字は結構、丈夫」などという誤解を招くような表現は避けるべきです。
たしかここだけ見ると誤解されかねないかも 知れませんね。推薦するの作り方はLinuxや*BSDだと
で表示された文字列から任意の長さ分使う。 という形なら誤解されないと思うのですが、これでいいでしょうか?すずきひろのぶ
Re:推奨するパスワードの決め方 (スコア:0)
Linux Security HOWTOにもこんな風に [linux.org]書いてありますし。
納得してはいけませんでした (スコア:1)
鵜呑みにしてみる?
Re:弱いパスワードを登録できた時点で負け (スコア:0)
なんか全体的にいいわけがましくて失望しました。