パスワード・トークン なぜ漏えいしたのか?
最近、ネットサービスの個人情報やパスワードが流出する被害が2件あった。
なぜ流出したのか?
被害を避けるためにはどうすればよいのか?
暗号化されていなかったパスワード 対策は?
今回顧客情報が流出した宅ふぁいる便は、本来暗号化すべきパスワードを暗号化していなかった*1。
結果として、パスワードがすぐ使える状態で流出してしまった。
パスワードが暗号化しているかどうかは素人目には判断できない。
これでは安心してネットを利用できない。
どうすれば、パスワードの流出による被害を防げるのか?
パスワード流出に備えてやるべきこと
- パスワードは自動生成アプリでその都度作り、パスワード管理アプリに保存。使いまわしてはいけない。
- 二段階認証がある場合は、必ず設定する。IDとパスワードが流出しても、二段階認証が突破できないと入れない。
- ログインを通知する設定も有効だ。
注意点として、iPhoneのTouch IDやFace IDのような生体認証の穴を挙げておきたい。
これらは、対応している機器以外でログインする場合には無視できる。
あくまで、パスワードの代わりに使えるものである。
不要な情報は登録しない
今回流出したのはパスワードだけではない。
居住地や勤務先の郵便番号、都道府県名なども流出していた。
今後、詐欺や悪徳商法に流用される恐れもある。
この件を受けて言えるのは、ウェブサービスに不用意に情報提供しないことだ。
家族構成などの情報は、マーケティング用の参考にすぎない。
ユーザーが提供しなくても、サービスに悪い影響をもたらさない。
任意回答の場合は、答えないことをおすすめする。
カード番号が必要な場合は、クレジットカードと紐付けできるプリペイドカード(Kyashなど)を登録するとよい。
パスワードはアプリでランダムに作成し、管理する。
家族構成など、任意入力の個人情報は提供しなくてもよい。
質問箱のユーザー情報流出—トークンって?
海外のホテルのコインランドリーなどで、お金ではない専用のコインを使うことがある。
これを使えば、洗濯乾燥機に「アクセス」できる。
こうしたコインをトークンと呼ぶ。
今問題になっているのは、「Peing - 質問箱」というウェブサービスで、「トークン」が誰でも見られる状態だったということだ。
Peingはユーザーが質問を集めて、それに回答するというサービスである。
ハッカーに何ができて何ができなかったのか?
ここでいうトークンは、自動投稿サービスなどが利用者の代わりに、Twitterにアクセスするために使うものである。
他のユーザーのトークンが見えてしまっていたために、アカウントの乗っ取りが可能であった。
- Twitterの登録情報全般が見られる状態だったとのことで、メールアドレスも閲覧可能だった。
- 非公開アカウント(鍵垢)のツイートの内容も見ることが可能だった。
- 一方で、Twitterのパスワードは流出していない。Peing本体のログインパスワードは暗号化された状態で流出した。
- ツイートやDMの送信(の代行)はできても、ログインは行えなかったということである。
あとで書くが、Twitter側が悪いわけではないので、誤解のないようにしていただきたい。
素人による対策は無理
今回の流出に関しては、素人目線での対策が難しい。
どちらかと言えば、企業側がホワイトハッカー(正義のハッカー)を雇って、欠陥を見つける必要があった。
一般の人は、怪しいサービスとTwitterアカウントとの連携を解除することくらいしかできない。
それこそ、Twitterで怪しいウェブサービスの情報を手に入れるしかないのだ。
怪しいとわかったら、すぐに利用を中止しよう。
API認証—連携先のページでログインさせる方式と欠陥
Peingの件で一番怖いのは、安全性が高いと言われていたAPI認証というシステムで情報流出を起こしてしまったことだ。
APIを使えば、一方のサービスにIDやパスワードを教えずに、もう一方のサービスの情報を使わせることができる。
「Twitterでログイン」して、会員登録できるウェブサービスを見たことはないだろうか?
あれもAPI認証を使っている。(Twitterのパスワードを教えているわけではない。)
それから、銀行口座を参照する家計簿アプリやキャッシュレス決済も、同様の仕組みだ。
情報流出はAPI認証を使うサービス側の問題
このTwitter API自体の安全性は高いはずだ。
ところが、そこにつないでいたPeingに欠陥があった*2。
いうなれば、洗濯機が故障していたわけではない。
あなたの洗濯物が入った洗濯機が誰でも使える状態にされていた。
APIを使う側のサービスがしっかりしていないと、今回のような流出につながる。
「パスワードを渡さないから安心だ」とは思わないことが大切だ。
ウェブサービスが代理でTwitterに投稿するための合鍵が、誰でも見られる状態になっていた。
Twitter本体ではなく、利用していたウェブサービスに問題がある。
怪しいウェブサービスがあれば、Twitterとの連携を解除しよう。
ソーシャルログイン:SNSのパスワードに注意
ここまでで、ウェブ認証の欠陥が大変なことにつながることはわかってもらえただろうか?
最近はSNSアカウントを介してログインするサービス(ソーシャルログイン)も増えている。
そのパスワードがバレると、いろいろなサービスにログインされてしまう恐れがある。
SNSのパスワードくらいは強度が高いものにしよう。
わかりやすい・覚えやすいパスワードは厳禁だ。
じゃあ、ソーシャルログインが欠陥ばかりなのかといえば、そうともいえない。
パスワードを渡していないので、パスワード自体の流出の恐れがない*3。
そういう意味では、一定の範囲においてはソーシャルログインのほうが安全である。
もちろん、今回のPeingのような欠陥がある可能性もあるので、安心はできない。
ソーシャルログインを利用するか、あえてID・パスワードを入力するかをよく考えてほしい。