
統計によるパスワードクラック 38
ストーリー by headless
平凡 部門より
平凡 部門より
システムに侵入した攻撃者がデータベースダンプからパスワードを取得するには、パスワードハッシュをクラックする必要がある。パスワード解析には長い時間を要することもあるが、統計的な分析を取り入れることで効率を上げる手法があるそうだ(Praetorian Security Blogの記事、
本家/.)。
現在ではユーザーに複雑なパスワードの作成が要求されるようになっており、システム側もより高度なハッシュアルゴリズムを使用するようになってきていることから、効率の良いパスワードクラック手法が必要となる。通常は短時間で完了する辞書の総当たりから始め、単語と数字や記号を組み合わせたハイブリッド方式、マルコフ連鎖によるパスワード生成など、より時間のかかるものを順に試していくことになる。しかし、大文字や数字、記号の位置、同じ文字種の連続といったパスワードの構造について、どれから試していくのかによって所要時間が大きく異なる。そこで、パスワードの構造を統計的に分析したものを利用することで、効率の良いパスワードクラックが可能になるという。
過去に流出した3,400万以上のパスワードについて構造を解析した結果、13種の構造のみで全パスワードの50%を占めていたそうだ。また、パスワードの作成時に求められる要件によっても、選択されるパスワード構造に偏りがみられるとのこと。たとえば、大文字のアルファベットを1文字以上使用することがパスワードの要件となっている場合、90%以上が大文字を1文字のみ、パスワードの先頭に使用するという。数字を含める必要がある場合、ほとんどのユーザーが2桁の数字をパスワードの末尾に付加しており、次に多いのが4桁の数字を末尾に付加したもの。末尾に1桁の数字を付加したもの、末尾に3桁の数字を付加したものが続く。
よく使われるパスワード構造を避けることで、統計によるパスワードクラックに強いパスワードを生成できるが、ランダムな構造にすると覚えにくくなってしまう。記事では2要素認証のパスワードマネージャーの使用を推奨している。皆さんはクラックされやすそうなパスワード構造を使用していないだろうか。
現在ではユーザーに複雑なパスワードの作成が要求されるようになっており、システム側もより高度なハッシュアルゴリズムを使用するようになってきていることから、効率の良いパスワードクラック手法が必要となる。通常は短時間で完了する辞書の総当たりから始め、単語と数字や記号を組み合わせたハイブリッド方式、マルコフ連鎖によるパスワード生成など、より時間のかかるものを順に試していくことになる。しかし、大文字や数字、記号の位置、同じ文字種の連続といったパスワードの構造について、どれから試していくのかによって所要時間が大きく異なる。そこで、パスワードの構造を統計的に分析したものを利用することで、効率の良いパスワードクラックが可能になるという。
過去に流出した3,400万以上のパスワードについて構造を解析した結果、13種の構造のみで全パスワードの50%を占めていたそうだ。また、パスワードの作成時に求められる要件によっても、選択されるパスワード構造に偏りがみられるとのこと。たとえば、大文字のアルファベットを1文字以上使用することがパスワードの要件となっている場合、90%以上が大文字を1文字のみ、パスワードの先頭に使用するという。数字を含める必要がある場合、ほとんどのユーザーが2桁の数字をパスワードの末尾に付加しており、次に多いのが4桁の数字を末尾に付加したもの。末尾に1桁の数字を付加したもの、末尾に3桁の数字を付加したものが続く。
よく使われるパスワード構造を避けることで、統計によるパスワードクラックに強いパスワードを生成できるが、ランダムな構造にすると覚えにくくなってしまう。記事では2要素認証のパスワードマネージャーの使用を推奨している。皆さんはクラックされやすそうなパスワード構造を使用していないだろうか。
とりあえず (スコア:2)
大文字を先頭にするのと末尾を数字にするのは止めよう。
the.ACount
Re: (スコア:0)
数字を先頭にして末尾を大文字にするということですね。わかります。
Re: (スコア:0)
ヤバい、俺のパスワードのことかと思った
そんなことより文字数制限をどうにかしろと何度言ったら (スコア:2, すばらしい洞察)
辞書に載っている単語と空白を組み合わせただけの覚えやすい8語のパスフレーズのほうが、ランダムな英数字8文字よりはるかに破りにくい
Re:そんなことより文字数制限をどうにかしろと何度言ったら (スコア:2)
本これ。
せめて身の周りからでも環境を良くしようと、私は自分が設計に携わるシステムでは数文字、十数文字なんて短い制限はしません。
ただしもちろん、明確な入力の上限は付けています。漫然と長くすると、数千文字の入力でログイン機構を迂回できちゃったXboxのバグみたいなのも起こりうるので。
Re: (スコア:0)
ふっかつのじゅもんがちがいます
Re: (スコア:0)
> 辞書に載っている単語と空白を組み合わせただけの覚えやすい8語のパスフレーズのほうが、
> ランダムな英数字8文字よりはるかに破りにくい
いや、同じレベルだろう。辞書に載っている単語だとそのほうが多少早いかもしれない。
Re: (スコア:0)
ランダム英数8文字: 62^8
単語8個: 少なくとも数千^8
ですから、まるっきり違いますよ?
問題は、例えシステムが受け入れてくれたにしても、そんな長いパスワードを入れるのは面倒だということです。
特にキーボードがない時は。
Re:そんなことより文字数制限をどうにかしろと何度言ったら (スコア:1)
今回の統計の話のように「複数ワードのパスフレーズ解析が効率的」という話になれば、
攻撃者もランダム英数字のパスワードと同じ方法のクラックは試さないんじゃないですかね。
WindowsよりMac OS Xが安全、くらいの意味しかないかと。
Re: (スコア:0)
#横からな上に若干オフトピですが
元コメント#2799815にあるパターン数の意味を理解されていないように思います。
ここでの例はすでに
完全ランダムな、大文字小文字を区別する英数字8文字
vs
(例えば)数千種類の単語を持つ辞書から8単語抽出
になっている、つまりパスフレーズを利用する例では「複数ワードのパスフレーズ解析が
効率的である」と判明した世界になっていて、それでもなおパスフレーズの方が
クラック耐性的には格段に有利だという話になっています。
文字通りケタ違いです。
#1000単語から5個の方が英数8文字より強い
#それはそれとして入力が面倒くさい問題は解決難しそう
スマホだと (スコア:0)
~\;|_辺りが苦行ですね。
iPhoneは入れ方分からなかった。
ソニーはキーボードインストール必要っぽい。
ノキアは特に何もしなくても入れられる。
Re: (スコア:0)
単語8個
→せいぜい3か4じゃね? 現実的に入力できる長さって
Re: (スコア:0)
62(大文字小文字+数字)の8乗と、少なくとも1000かそこらの8乗が同じレベルとは、ずいぶんとまた斬新なご意見ですなあ。
もちろん、1語目は代名詞、2語目は動詞の可能性が高いとか、それこそ統計的な手法である程度は狭められるだろうけど、それにしても比べものにならんだろ。
Re: (スコア:0)
うむ。
8つ単語を並べよう!って言われたとたん
one two three four five six seven eight
と
To be To be Ten made To Be
のどちらにしようかなーって考えちゃうようなおっちょこちょいさんなのかもしれない。
Re:そんなことより文字数制限をどうにかしろと何度言ったら (スコア:1)
> コピペ禁止と称してパスワード管理ソフトの利用さえも間接的に禁止している。
JavaScriptをオフにすればどうということはないし、
別にパスワード管理ソフトも使えるよね、自動で入力してくれるんだから。
ところで、「2要素証可能なパスワード管理ソフト」って具体的にどんなの?
2要素認証だから、Webサービスということは分かるけど、
ローカルのファイルで管理ではなく、Webサービスを推奨する理由って何だろう。
svn-init() {
svnadmin create .svnrepo
svn checkout file://$PWD/.svnrepo .
}
Re: (スコア:0)
とりあえずUFJ使うのやめよう
Re:そんなことより文字数制限をどうにかしろと何度言ったら (スコア:1)
もっといいところあるぞという話ならついでに教えて欲しい…。
Re: (スコア:0)
都市銀行3社は二段階認証ワンタイムパスワードカード出してるからさっさと入手しろよ
MUFGとSMFGはチャレンジレスポンスになっていないのがちょっと残念だが
Re: (スコア:0)
> ジャップの常識は世界の非常識を体現した悲しい現実。
って言いたいだけなんだろ?w
> # 彼はまだその狂ったセキュリティポリシーを貫いているんだろうか?
人を小馬鹿することがたのしいんですね?
Re: (スコア:0)
ここにも某国人がいるのか…
どのへんが新しい情報なのかな? (スコア:2)
> パスワード解析には長い時間を要することもあるが、
> 統計的な分析を取り入れることで効率を上げる手法があるそうだ。
うん、昔からね。
まじかよ、一番時間がかかると思って (スコア:0)
9999にしたのに
Re:まじかよ、一番時間がかかると思って (スコア:2)
5000くらいにしておこうぜ。
Re: (スコア:0)
~~~~~~~~ のほうが安全じゃないですか?
Re: (スコア:0)
9998までは試したのですが
#そして最後は本来の意味でのブルートフォース
誕生日? (スコア:0)
> 次に多いのが4桁の数字を末尾に付加したもの。
誕生日だと4桁あっても366種類、生年だとユーザの年齢層からみて70種類程度(19XXとか20XXとか)
Re:誕生日? (スコア:1)
統計学者は言いました。 (スコア:0)
統計によれば人気のパスワードを試せば数パーセントのアカウントに侵入できると
Re: (スコア:0)
pasuwaado 案外行けそうな気が(何処に
Re:統計学者は言いました。 (スコア:1)
>pasuwaado 案外行けそうな気が(何処に
日本語をローマ字にするだけでも不正アクセスされる確率は一気に下がると 以前コメかタレコミにありましたね
Re: (スコア:0)
よし、今度から銀行の暗証番号をローマ数字にしよう(そうじゃない)
暗証番号 (スコア:0)
関係ないけど、金融機関のキャッシュカードが数字4桁を廃して、英数字8桁くらいにならないもんかね?
#3回間違えると使用停止になるから良いのか・・・・・・な?
Re:暗証番号 (スコア:4, 参考になる)
カードを持っていることも1つの鍵になると思います。
Re: (スコア:0)
あれ四ケタ固定だよね。
短すぎて覚えにくい。
Re:暗証番号 (スコア:2)
固定?変えたければ変えればいいんでは?
Re:暗証番号 (スコア:1)
3桁や5桁にユーザーが変更できるんですか。
Re: (スコア:0)
ちょま。電文が固定長だったらどうすんだ。