一時的にパスワード総当りが可能になってました。
あるハッカーが、どんなフェイスブックアカウントでも乗っ取れる方法を発見しました。でも幸い彼はいわゆるホワイトハットのハッカーで、その脆弱性を私利私欲とかいたずらに使わず、フェイスブックに通報しました。フェイスブックにはバグ発見に報奨金を支払うプログラムがあり、彼に1万5000ドル(約170万円)支払っています。
バグを発見したのはインドのAnand Prakashさんで、彼はその内容をブログで公開しています。裏付けとなる動画やフェイスブックからの支払いのスクリーンショットも貼られています。フェイスブックも米Gizmodoに対し、彼に報奨金を支払ったことを認めています。発見されたのは2月22日で、支払いは3月2日に行われていました。
そのバグとは、パスワード再設定手順に開いた穴を突くものでした。フェイスブックでパスワードを忘れて再設定をリクエストすると、テキストメッセージかメールで6ケタの本人確認コードが送られてきて、それを使ってパスワード再設定手続きをします。そのとき、コード入力を一定回数以上間違えると通常はロックがかかってしまいます。これは、なりすまし犯があらゆる数字の組み合わせを試すことでアカウントを乗っ取るのを防ぐための「レート・リミッティング」という手法です。ちなみに、あらゆる数字や文字列の組み合わせを試してパスワード認証を破ろうとする行為は「ブルートフォース」と言います。
問題は、beta.facebook.comなどフェイスブックのベータサイトでレート・リミッティングが外れていたことです。なのでPrakashさんはブルートフォースによって、どんな人のアカウントでも乗っ取ることができる状態になったんです。以下はPrakashさんがYouTubeで公開した動画です。
この動画でログインしているのはPrakashさんのフェイスブックアカウントですが、一連の流れを見ているとたしかに6ケタのコードを順番に試していって最終的に「当たり」にたどりついているようです。つまり、Prakashさん以外の他人のパスワードをリセットし、アカウントに保存されているどんな情報にもアクセスしたり、その人になりすましてポストしたりできる状態になっていたんです。
ただフェイスブックの広報担当者、Melanie Ensignさんは、このバグが表に出ていたのは72時間だけだったと言っています。ベータサイトも通常はブルートフォースされないように保護されているのですが、裏側のシステム変更をしたときに何らかのミスがあって、一時的に穴が空いてしまったとのことです。
ベータサイトで、かつ一時的であったといっても、ちょっとしたミスで誰もが乗っ取られる危険な状態にあったというのは怖いですね。Prakashさんは1万5000ドル受け取ったそうですが、これがもし悪用されていたら損害ははるかに大きな金額になっていたはずで、もうちょっとあげてもいいような気がします。
source: Anand Prakash via The Hacker News
Bryan Lufkin-Gizmodo US[原文]
(miho)