Adobeのサービスに登録している人は今すぐパスワードを変更しましょう。パスワードが盗まれてインターネット上に公開されてしまいました。流出したパスワードでクロスワードパズルを作った人までいるのです。今回の事件を機会に、どんなパスワードを使うべきでないかを詳しく見ていきましょう。 先日のAdobeの情報漏えいでは顧客のデータが盗まれました。その影響は長期にわたって続くはずです。当初Adobeはハッキングの影響を受けたユーザーを300万人としていました。しかしその後、漏えいしたデータベースに約1億5,000万件のレコードが含まれていたことが明らかになっています。さらに、保存されていたパスワードが十分に保護されておらず、ほとんどのケースで元の状態に復元できる可能性があるというのです。これを受けて、Facebookは影響を受けたユーザーに対し、AdobeとFacebookで同じパスワードを使用している場合はパスワードを変更するように求めました。 1つのパスワードを複数のオンラインサービスで使い回すというのは深刻なセキュリティ問題です。さらに、新しいパスワードを考えるときに、非常に多くのユーザーが同じような間違いをしてしまいます。Adobeのデータベースで多く使われているパスワードを最新の例として、このような間違いから学ぶべきことを紹介していきます。
1. 「password」「qwerty」「123456」
驚くべきことに、こうしたあからさまなパスワードがいまだに人気パスワードランキングの上位に君臨しています。Adobeのデータベースでは、「123456」が圧倒的第1位のパスワードであり、1億5,000万のユーザーのうち200万人以上が使用していました。第2位はこれよりずっと複雑なパスワードで、「123456789」の後ろに「password」という単語が付いています。「password」という単語をパスワードに選んだユーザーは345,000人。キーボード配列「qwerty」も人気が高く、第6位でした。
2. 会社名やサイト名、そのバリエーション
ユーザー名が「John」で、パスワードが「Facebook」という人は自分以外にいないと思うかもしれませんが、そんなことはありません。もちろん、サービス名はハッカーがパスワード総当たり攻撃に使う辞書には載っていないでしょう。しかし、経験豊富なハッカーなら、こうしたパスワードを自分のデータベースに追加するはずです(Adobeの事件では実際にそうでした)。会社名やサービス名を使ったパスワードは、Adobeの上位100パスワードで4位、9位、15位、16位にランクインし、それぞれ「adobe123」「photoshop」「adobe1」「macromedia」でした。
3. ユーザー名とパスワードが同じ、など
他のプロバイダーは、保存するパスワードをAdobeよりもずっと適切に暗号化しているかもしれません。しかし、ハッカーがデータベース内の関連フィールドを見る(それも比較的簡単に)可能性は十分あります。ここで問題となるフィールドは、ユーザー名、メールアドレス、パスワードのヒントなど。パスワードを推測するうえで非常に重要な手がかりとなることがわかっています。一番痛いのはユーザー名とまったく同じパスワードですが、他の「ちょっとひねった」小技も似たようなものです。パスワードそのものをパスワードヒントのフィールドに入力する人もいれば、「1~6」「最後と最初」のように一目瞭然のヒントを書く人もいます。
4. 明らかな事実
Facebookはハッカーお気に入りのツールです。メールアドレスとユーザー名を使えば、とても簡単にFacebookを検索でき、「犬」「息子の名前」「誕生日」「仕事」「母親の旧姓」「好きなバンド」といったパスワードのヒントを見つけることができます。ヒントの約3分の1は家族やペットに関するもので、そのうち15%がパスワードを直接的に、あるいはほぼ直接的に示しています。
5. 単純な文字列
文字や数字の組み合わせは無限にあるように思えます。しかし、この無限の力は極めて限定的にしか使われていません。なんといっても、私たちの目の前には、アルファベットとキーボードという形で非常に強力な「ヒント」が提示されているのですから。そんなわけで、「abc123」「00000」「123321」「asdfgh」「1q2w3e4r」といったパスワードが生まれるのでした。簡単に覚えられる文字と数字の組み合わせを思いついても、忘れてください。ハッキングにも都合がいいパスワードですし、パスワード辞書に登録されている可能性が非常に高いからです。
6. 一般的な単語
さまざまな研究によって、パスワードの3分の1から2分の1は辞書に載っている簡単な単語であり、その言語で頻繁に使われる上位10,000語に入っていることがわかりました。最近のコンピューターは1秒間に10,000のパスワードを試すことができるため、そのようなパスワードはまったく役に立ちません。Adobeの顧客データベースには以下のようなパスワードが数多く含まれていました。 「sunshine」「monkey」「shadow」「princess」「dragon」「welcome」「jesus」「sex」「god」
7. わかりやすい変更
ほとんどのサービスは、辞書を使った総当たり攻撃を困難にするために、特定のルールに基づいてパスワードを設定するように求めています。たとえば、「6文字以上、大文字と小文字、数字、記号を必ず入れる」というルールです。以前も書いたように、こうした対策は時代遅れであり、今となっては考え直す必要がありますが、これら要件をうまいこと満たす方法がすでに定着しています。一番よくあるのが最初の文字だけを大文字にするというケースで、数字を使った変更として多いのは、パスワードの最後に「1」を付けるというパターンです。Adobeのデータベースでは、このような回避策がわかりやすい単語と組み合わされていて、「adobe1」や「password1」など、非常にぜい弱なパスワードが作成されていました。よく使われる記号は「!」と「_」です。
8. わかりやすい変更2(1337)
「ハッカー」映画などのポップカルチャー作品のおかげで、今では「ハッカー語」(LEET、1337)が広く知られるようになりました。ハッカー語とは、一部の文字を形が似た数字や記号に置き換えるといった簡単な変更を行う表記法です。こういった文字の置き換えは良いアイデアに思えますし、「H4X0R」や「$1NGL3」というパスワードは強力そうですが、残念ながら「hacker」や「single」のような簡単なパスワードとあまり複雑さは変わりません。なぜなら、特別なパスワード総当たり攻撃アプリには、いわゆるミューテーション(変形)エンジンが搭載されていて、わかりやすい変更を辞書の単語と1つ1つ照らし合わせてみるからです。
9. 力強い文
現代では、パスワードは長ければ長いほど良いため、パスフレーズはパスワードよりも安全性が高いと考えられています。しかし、いくつか例外があります。非常に短く極めて予測しやすいフレーズは安全ではありません。Adobeの上位100パスワードには「letmein」「fuckyou」「iloveyou」などがありました。何も付け足されていないパスフレーズです。
10. 社会保障番号などの重要な番号(米国市民の場合)
社会保障番号(米国で使われている、国民を識別する番号)などは推測が困難ではあるものの、ハッカーが「私の社会保障番号」のようなパスワードヒントを見れば、さらなる労力をかけてその番号を探すでしょう。社会保障番号をユーザー名や誕生日などのFacebookで見つかるデータと組み合わせると、なりすましに使えるため、とても簡単にお金を手に入れることができてしまいます。
番外: 同じパスワード
同じパスワードを複数のオンラインサービスで使い回すという例は、パスワードに「123456」を使うのと同じくらいよく見られます。もちろん、1つの(Adobeの)データベース内では見つかりませんが。あまりにもわかりやすいので、大変よくない使い方です。自分の(Adobeの)パスワードをハッカーに知られてしまうと、そのメールアドレスとパスワードの組み合わせがFacebookやGmailなどの人気サイトで試され、1つだけでなく多くのアカウントに侵入される恐れがあります。Kaspersky Labの依頼でB2B Internationalが実施した調査では、6%のユーザーが1つのパスワードをすべてのアカウントに使っており、33%はごく少数のパスワードしか使っていないことが明らかになりました。Adobeのサイトが、こうしたユーザーが使うサイトの1つだった場合、彼らのデジタル生活全体がリスクに晒されることになります。 ここまで見てきたような過ちが横行している理由は、単純です。現在、一般的に1人当り5~10のオンラインサービスを利用しており、独自の複雑なパスワードを5~10個も覚えるのはとても難しいからです。しかし、この問題にはシンプルな技術的解決策があります。 私たちの解決策は以下のとおり:
- 同じパスワードの使い回しをしない
- 長くて強力なパスワードを使用する
- 特別なサービスを利用してパスワードの安全性をチェックする
- パスワード管理用ソフトウェアを使ってすべてのパスワードを暗号化形式で保存する。極めて難解で強力な自分だけのパスワードをオンラインサービスごとに作成でき、忘れてしまうリスクも回避することができます