jbeefの日記: slashcodeが一部ユーザのパスワードを漏らす(3)
日記 by
jbeef
slashcodeのメンテナのひとりであるJamie McCarthy氏が、9月18日にBUGTRAQに流した記事によると、
- 最初の報告者とこの件に関心を持った何人かの人々とメールをやりとりし、彼らから提供されたreferer_logに記録された事例を確かめたところ、その全てが、無効なパスワードとなっていた。
- この方法でログインしたとき、ログインに成功した場合には、自動的に問題のないURL(ユーザ名やパスワードを含まない)にリダイレクトしているので、それらが漏れることはない。これは少なくともversion 1.0.0(2000年3月)からこのようにしてきている。
- それに対して、ログインに失敗した場合、つまり、パスワードを変更していて、ブックマークしたときのものではログインできない場合には、リダイレクトがなされない。
のだという。
つまり、ユーザ名とパスワードを含むURLが漏れたのは、ログインに失敗したときなのだろうというわけだ。
この状況について同氏は、ユーザが次のようにしている場合には問題となっているだろうとしている。
- 他のサイトで同じユーザ名を使用していて、
- 他のサイトで同じパスワードを使用していて、
- 辞書攻撃されるようなパスワードを使用していて、
- 「全く安全ではない」リンクをブックマークしていて、
- 後にそのパスワードを変更していて、
- そのブックマークを使い続けている(もうログインできないのに)場合
ほとんど滅多にそんな場合はないという感じだが、同氏が挙げなかった次のシナリオも考えられるのではないだろうか。
- 「全く安全ではない」リンクをブックマークしていて、
- 後にパスワードを変更していて、
- その後にそのブックマークを使ったことがあり(ログインはできなかったはず)、
- さらにその後にパスワードを元のものに戻して、現在もそれを使っている場合
こちらは、それなりに該当者がいそうな気がするので、注意が必要だと思う。
同氏は、slashcodeを次のように変更すると述べている。
- ログインに失敗した場合でも、問題のないURLにリダイレクトするようにする。
- この"totally insecure"オプションをユーザに提供するには、変数のセットが必要となるようにする。これはデフォルトでオフにする。
今現在、slashdot.jpで試してみると、ログインに失敗したときもリダイレクトされるようになっているようだ。既に対策されたバージョンに置き換えられているのだろうか。
slashcodeが一部ユーザのパスワードを漏らす(3) More ログイン