高橋: こんにちは、高橋です。前回に引き続き、徳丸さんをお招きして、パスワードの定期的変更問題についてお話を伺います。徳丸さん、よろしくお願いします。
徳丸: はい。よろしくお願いします。
高橋: 前回は、「オンライン攻撃に対する予防としてパスワードの定期的変更は意味がない」という結論でしたが、今回は、事後の被害軽減策として、パスワードの定期的変更に意味があるか、というテーマですね。
徳丸: はい。その事後の話ですが、2つの話題があります。まず、前回の続きで、パスワードハッシュ値が漏洩してオフライン攻撃で解読されるまでの時間稼ぎとして、パスワードの定期的変更に意味があるか、次に、パスワードそのものが漏れている場合の緩和策として、定期的変更に意味があるかです。
高橋: それでは、まずハッシュ値が漏洩しているケースについてお願いします。
徳丸: はい。まず、前提として「パスワードを3ヶ月毎に変更する」というポリシーを想定しましょう。3ヶ月に深い意味はありませんが、ありがちな想定です。
高橋: 四半期毎だと、企業人としてもキリがいい感じです。
徳丸: 次に、ハッシュ値の解読に要する時間がどれくらい掛かるかが問題です。これが短過ぎても、長過ぎても、パスワードの定期的変更には意味がありません。
高橋: なぜでしょうか?
徳丸: まず、短すぎる場合、例えば 1週間でハッシュからパスワードが分かるとすると、定期的変更の前にパスワードが悪用される可能性が高いですよね。逆に、解読に30年掛かる場合は、変更しなくても、30年も経てばそのパスワードは使わなくなっている可能性が高いでしょう。
高橋: それでは、ハッシュの解読に1年掛かるくらいに予め想定して、パスワードの保存方法を決めれば良いのではありませんか? そうすると、3ヶ月毎のパスワードの変更がいい感じです。
徳丸: そうはいかないのですよ。まず、ハッシュの解読に 1年掛かると想定しても、攻撃側がマシンの台数を 12倍に増やせば、1ヶ月で終わってしまいます。パスワードの変更が間に合わない可能性が高いです。
高橋: ハッシュの解読は並列処理が容易という話題は、前回にも出てきました。
徳丸: 次に、わざわざ 1年で解読できるように調整する必要もないですよね。1000年でも、1万年でも、うーんと長くすれば、パスワードの定期的変更の必要はないわけですから。
高橋: 前回教えて頂いたソルト、ストレッチングや、長いパスワードの設定により、それが可能になるわけですね。
徳丸: そうです。8文字英数字パスワードのハッシュが、GPUの活用で、 1日で解読できるとしましょう。同じ条件で、英数字記号で12桁のパスワードに変えると、ハッシュの解読にはどれくらい掛かると思いますか?
高橋: 前回のお話では、1000万倍ということでしたね。
徳丸: それは、さまざまな条件を考慮した控え目な(安全側の)数字です。計算してみると、約56億倍掛かります。
高橋: 徳丸さん、さばを読み過ぎ…逆か、控え目過ぎたのではないですか?
徳丸: パスワードに記号を使えるようにした寄与もあり、それが12乗で掛かるので莫大な差になるのです。年で言うと、1500万年掛かる計算です。
高橋: ひゃー、ハードの性能向上や攻撃マシンの台数増強を考慮しても、十分な余裕がありそうですね。
徳丸: そうです。加えて、ソルトやストレッチングの寄与もあり得るわけですが、利用者に目に見える範囲だけでも、これだけの改善ができるわけです。
高橋: なるほど…でも、前回のお話では、まだ8文字英数字のパスワードのサイトが多いというお話でしたよね。
徳丸: そうなんです。例えば、三井住友銀行のネットバンキングでは、「半角4~8桁の英数字」となっています。
高橋: 4桁もありですか!
徳丸: まぁ、4桁パスワードをつけてしまうは利用者の責任としても、上限は緩和して欲しいですね。
高橋: もっとマシな銀行はないですのか?
徳丸: どこも似たり寄ったりですし、実は、三井住友のネットバンキングやめようと思った矢先に、ワンタイムパスワードのトークンを無償化するという英断があったので、引き続き利用しています。
高橋: ワンタイムトークンの無償化はいいですね。
徳丸: そうなんです。前は、月に105円払ってましたから、ありがたいです。
高橋: また、話がそれてしまいました(_ _) 次に、パスワードそのものが漏れてしまった場合の緩和策について教えて下さい。
徳丸: わかりました。この場合重要なことは、「パスワードが漏れた事実を利用者が気づけるか、それはいつか」ということです。
高橋: 時々、個人情報漏洩のニュースやリリースが発表されますが、それのことですか?
徳丸: はい。加えて、利用者がサイトを使っていて気づくこともありますね。
高橋: どんな場合でしょうか?
徳丸: 正しいパスワードを入力しているのにログインできないとか、不正利用(メッセージスパムの送信、意図しない振込…)に気づいたとかですね。
高橋: パスワード漏洩のお知らせがないのに、実際にはパスワードが漏洩しているとすると、サイト側が気づいていないか、気づいているのに隠しているということでしょうか?
徳丸: そういうケースもあり得るとは思いますが、実際に多いのは利用者の不注意でパスワードが漏洩するケースだと思います。
高橋: 具体的に教えて下さい。
徳丸: 一番ありそうなのはフィッシングですね。こちらの記事も参照して下さい。
高橋: なるほど、自分の不注意で漏らしてしまったら、中々気づけないし、サイト側も気づかない場合が多そうです。
徳丸: そうです。最悪の場合、パスワードが漏洩したことに、利用者は永遠に気づかないことになりますね。
高橋: それは困ります。それでは、やはりパスワードの定期的変更が必要なのではありませんか?
徳丸: パスワードの定期的変更は最後の手段として、もっとよい方法がないか考えましょうよ。
高橋: そんな方法がありますか?
徳丸: はい。まず、定期的にログイン履歴を確認するという方法があります。下図は、Googleの最近のアクティビティです。
高橋: 結構詳しい情報が表示されていますね。
徳丸: そうです。これを見て、怪しいログインがあれば、不正ログインの可能性と見てパスワードを変更します。
高橋: ……結局、定期的にチェックして、怪しければパスワードを変更するので、手間はあまり変わらない気がしますが…
徳丸: でも、手間が似たようなものとしても、管理レベルは随分違います。パスワードの定期的変更は、不正アクセスがあるかないか分からない前提で、とにかくパスワードを変更するわけですから。しかし、もっとよい方法もあります。
高橋: なんだ、早くそれを教えて下さい。
徳丸: 2段階認証が使える場合は、2段階認証をぜひ設定しましょう。
高橋: Googleや、facebookやYahoo!で導入されている、6桁数字を追加で入れるあれですか。
徳丸: はい。2段階認証を設定しておけば、フィッシングに関しては十分な対策になります。
高橋: フィッシング以外の原因、例えばサイトが不正アクセスされて情報が漏洩した場合も大丈夫ですか?
徳丸: 大丈夫な場合と大丈夫でない場合があり得ますね。
高橋: 大丈夫でない場合とは?
徳丸: 2段階認証にワンタイム生成アプリを使っている場合、ワンタイムパスワードは秘密のシード(シークレットキー)と時刻からパスワードの数字を生成します。このシードはサイト側でも保存していないとパスワードの照合ができないので、この値まで漏洩したら、第三者がワンタイムパスワードを知り得ることになります。
高橋: そんなことがあり得るのでしょうか?
徳丸: あり得るのかと疑問に思うのはもっともですが、RSAのワンタイムトークンのシードが漏洩して不正アクセスされたという事例があります。IIJの根岸さんが素晴らしい解説記事を書いておられるので、ぜひお読み下さい。
高橋: 2段階認証まで破られる可能性があるとしたら、やはりパスワードは定期的に変更した方がよいのではありませんか?
徳丸: レアなケースだとは思いますが、そこまで心配するのであれば、ログイン履歴の定期的な確認をお勧めしますよ。
高橋: でも、ログイン履歴が確認できないサイトも多いですよ。
徳丸: そこです。どのサイトに対してもログイン履歴を定期的に確認するなんて現実には不可能です。ですが、全てのサイトのパスワードを3ヶ月毎に変更することも、労力が大きすぎます。
高橋: どうすればいいの? と思ってしまいますが。
徳丸: サイトの性質によって、管理レベルを区別することをお勧めします。区別の基準として、サイトに不正ログインできる場合、短期的な攻撃で終わるものと、長期に攻撃が続くものがあります。
高橋: 短期的に攻撃が終わってしまうことがあり得ますか? 攻撃者はいつまでも攻撃したいのでは?
徳丸: 具体的には、メッセージスパム、寸借詐欺、不正な振込、不正な物品購入等は、長期的に攻撃したいと思っても、被害者が直に気づいて、パスワード変更などの処置をしてしまいます。攻撃者側も心得ていて、たとえば預金のありったけを振り込みしてしまいます。
高橋: なるほど、ちびちび攻撃したら、儲けが減るということですね。では、長期に攻撃が続くものとはどのようなものでしょうか?
徳丸: 利用者に気づかれない攻撃としては、情報の漏洩が代表的です。たとえば、メールの盗聴が目的であれば、スパム送信などしないで、じっと静かに盗聴を続けるでしょうね。
高橋: それは怖い! やはりパスワードの定期…
徳丸: (遮って)いや、情報漏洩が心配ということは、秘密情報を扱うサイトということなので、そのようなサイトは少数に絞り、2段階認証やログイン履歴確認ができるサイトを選定することですね。
高橋: あー、ようやく道筋が見えてきたような気がします。秘密情報を扱うサイトは、2段階認証をサポートしたサイトに限定しろ、と。
徳丸: それをお勧めします。
高橋: でも、現時点で2段階認証に対応しているサイトは大抵米国のサービスだから、CIAが傍受しているのではないですか?
徳丸: CIAではなく、国家安全保障局(NSA)ですが、政府関係者ならともかく、民間のメールの中身を一々確認するほど彼らも暇ではない気がしますが、心配であれば、Yahoo!ジャパンなど、日本のサービスで2段階認証に対応しているものもありますよ。
高橋: まぁ、そこはよく考えます。
徳丸: あと、メールに関しては、元々盗聴のリスクがあるものなので、機密性の高いメールはPGPなどで暗号化するほうがよいでしょうね。
高橋: 分かりました。その他のサイトはどうなんでしょうか?
徳丸: オンラインバンキング等も含めて、短期的に被害を受けるサイトは、パスワードの定期的変更では間に合わないので、他の施策をとるのがいいですね。ジャパンネット銀行と三井住友銀行は無料でワンタイムトークンを配っていますし、有料でトークンを配布している銀行もあります。パスワードリスト攻撃の被害の多いネットゲームも、2段階認証に対応しているサイトがあります。
高橋: わかりました。では、そろそろ今回のまとめをいただけますか?
徳丸: はい。先に述べたように、利用者側で警戒が特に必要な状況は、長期にわたって情報が漏洩し続ける事態ですから、そのような秘密情報を預けるサイトはむやみに増やさず、2段階認証に対応した安全性の高いサイトに絞るのがよいでしょう。これができれば、パスワードの定期的変更をすべき理由はなくなります。
高橋: その他のサイトはどうでしょうか?
徳丸: 秘密情報の有無に関わらず、攻撃者にとって金銭的価値の高いサイト、オンライン銀行やクレジットカードを扱うECサイト等は、短期集中的に狙われやすいので、パスワードの定期的変更は意味がありませんが、それ以外で、パスワードの文字数が多く設定できるとか、パスワードリセットの機能がちゃんとしているなど、セキュリティ施策のしっかりしているサイトを選んだ方がいいですね。
高橋: ちょっと素人には難しい判断ですね。
徳丸: 機会があれば別の記事に書きましょうかね。
高橋: 結局、パスワードの定期的変更は意味がないという結論なんですか?
徳丸: そう言いたいところですが、理論的には、次の条件を満たすサイトを使わないといけない場合は、パスワードの定期的変更が効果がなくはない、ということになります。
高橋: 微妙な言い方ですね。どのような条件ですか?
徳丸: はい。箇条書きにしますね。以下の3条件を満たす場合、パスワードの定期的変更が意味がある可能性があります。
- 長期に情報が漏洩し続けると被害の拡大するメール、メッセージング、ストレージなどのサービスである
- 2段階認証、リスクベース認証、ログイン履歴確認画面などのセキュリティ施策がない
- 情報漏洩があっても、サイトからアナウンスされない可能性がある or フィッシング被害にあう心配がある
高橋: フィッシングは利用者の責任ですが、他は残念な感じがしますね。しかし、このようなサイトを使う場合は、パスワードの定期的変更で安全性が高まるのですか?
徳丸: いや、攻撃を受けると、過去のデータは全て漏洩した上で、次のパスワード変更までは情報が漏洩し続けます。
高橋: 次回の「定期的変更」で漏洩が止まる、と。
徳丸: いや、それも確実なものではありません。
高橋: あっ、そうなですか?
徳丸: はい。情報が漏洩してもサイトからアナウンスがないということは、サイト側も気づかない「完全犯罪」の可能性が高いわけです。この場合は、攻撃者が再度攻撃すると、パスワードを変更していても防御できません。
高橋: なんか、残念な上に、パスワードを変更しても、攻撃を断ち切れる訳ではないのですか…
徳丸: それが現実です。フィッシングの方はパスワードの変更で情報流出が確実に止まりますが、フィッシング対策という点では、2段階認証なら事後対策だけでなく、侵入も止められるわけですから、2段階認証が使えるならぜひ使うべきです。
高橋: わかりました。ところで、今まで、住所、氏名、メールアドレス、電話番号などの個人情報の話が出てこなかったと思いますが、これらはどうですか?
徳丸: 個人情報は侵入された時点で漏洩しているはずですので、諦めてください。パスワードの定期的変更による被害緩和は、新しい情報までもが漏洩し続けないようにする話です。
高橋: つらいですね(>_<) では、最後に、利用者のとるべきセキュリティ施策についてまとめていただけますか?
徳丸: はい、これも箇条書きにしましょう。
- パスワードはできれば12文字以上で、できるだけ長く設定する
- パスワードは他のサイトとは別のものに設定する(パスワードリスト攻撃対策)
- 秘密情報を扱うサービスは、少数に絞り、以下のセキュリティ施策のあるサイトを可能な限り選択する
- 2段階認証に対応している(強く推奨)
- リスクベース認証、ログイン履歴の確認画面(推奨)
- 長いパスワードを設定できること(12文字以上推奨、長いほど安全)
- 秘密情報を扱うサービスは、定期的にログイン履歴を確認する
- サイトやWebニュースなどで、サイトのパスワード変更の案内が来た場合は、すみやかにパスワードを変更する
- マルウェア対策として以下を実施する
- 端末のOSやソフトウェアを常に最新の状態に保つ
- ウイルス対策ソフトを導入してパターンファイルを最新に保つ
- ブラウザのプラグインやアドオンは最低現に絞り最新に保つ
高橋: ありがとうございました。これで、パスワードの定期的変更に関する徳丸さんへのインタビューは終わりです。みなさま、ごきげんよう~
※注: ここに登場する人物はすべて架空の人物です。文責は徳丸浩にあります。