パスワードクラッキングツールの開発者がカナダのAgileBitsが開発し販売しているパスワード管理アプリ「1Password」に欠陥があるとコメントし、話題になっているそうです。
この問題は1Passwordの暗号ライブラリ(PBKDF2)の欠陥をつき、パスワードクラックツールHashCatの開発者により考案された最適化手法を利用することで、2倍から4倍の速度でパスワードの推測を行えるというもので、この手法とGPUによるパスワードをクラック手法を併用すれば毎秒300万候補のパスワードを推測できるそうです。
1PasswordはPBKDF2-HMAC-SHA1を使ってる→GPU4台駆使すれば300万回パスワードを試行できる→すぐに破っちゃうぜヒャッハー!ってことですかね / “Agilebits 1Password support a…” http://t.co/qcASJSXuIn
— :matsuu: (@matsuu) 2013年4月18日
The PBKDF2-HMAC-SHA1 part is what makes the entire calculation slow. For each iteration of PBKDF2-HMAC-SHA1 you call 4 times the SHA1 transform. But this is only to produce a 160 bit key. To produce the required 320 bit key, you call it 8 times. So if you have 1000 iterations, you call it 8000 times. Due to some simple optimizations you can do with HMAC you can precompute ipad and opad, so you end up in 2 + (2 * iterations) = 2002 for 160 bit or 4004 calls to SHA1 transform for 320 bit.
これに対し1Passwordチームはセキュリティ研究らとやり取りし、セキュリティコンサルタントのAdam Caudillさんは「エンドユーザー向けに言うと、攻撃者は1Passwordが必要としているSHA1呼び出しの50パーセント(不具合があれば25%)を実行すればパスワードを推測でき、設計者が意図したより安全性が低いということはなりそうだ」とコメントし、
AgileBitsはこれに対し「これは”HashCat”の問題であり、1Passwordに限った問題ではないが1Password v3.9では微調整が入ります」とコメントしているので、既に修正に向かっているようです。
- On hashcat and strong Master Passwords as your best protection – AgileBits Blog
コメント
Mac版の1PasswordはPBKDF2-HMAC-SHA1ハッシュ使ってて
それはGPU使えばすごい数のアタックかけられるから無駄だよね?
って話やね
通常、会員制サイトなんかは3回連続で間違えると後は弾かれちゃうけど、1Passwordは数百万回リトライしてもOKな仕様なの?
ミスの許容範囲はせいぜい10回位までと思うけど…。