2017年1月15日日曜日

ブラウザのマスターパスワードについて

元日に週一ペースで更新すると言っておきながら、いきなり先週更新をサボってしまいました。
年末から体調悪くて先週マジで倒れてたんです。勘弁してください。
ちなみに今も快復してません。

さて今日はブラウザのセキュリティに関してのお話。

ITとかセキュリティ系のニュースをチェックしている人は、この記事のタイトルを見て「ああ、3〜4年前にちょっと話題になったアレだろ?」と思うかもしれませんが、そのとおりです。
このタイミングで今更取り上げることにも特に意味はありません。思いついたから書く。ただそれだけです。

では行きます。



パスワードの保存先

ブラウザにパスワード等を保存していない人は少数派だと思います。最近のブラウザは別のPCでもパスワードを同期してくれますからね。本当に楽ちん。
少数派な人は
  • パスワードを全部覚えているすごい人
  • パスワードを使いまわしているこわい人
  • パスワード管理ソフトを使っている意識高い人
のどれかに属しているんじゃないでしょうか。あ、「どこのアカウントも持っていない人」とか「付箋にメモしている人」とかもいた。

「大事な情報が入ってるのはブラウザだけじゃねーだろ!」という意見はもっともですが、ブラウザのパスワードが漏れてしまうと買い物やら送金やら株取引やらできてしまう可能性があるので、なんだかんだで一番重要なのがブラウザだと思っています。

マスターパスワード

ちょっと席を外した隙に他人にPCを使われ、パスワードを抜かれてしまった…そんなことがないように、FirefoxやSafariにはマスターパスワードを設定できます。

ブラウザ起動時にマスターパスワードを要求し、正しく入力できないと他のパスワードを取り出せないアレです。

そして、Chromeにはマスターパスワードを設定できないとのこと。

Googleの言い分

こちらの記事に詳しくまとめてありますが、Googleの言い分としては
  • 今の仕様を変えるつもりはない
  • Chrome に保存されたパスワードへのアクセス制限は OS のユーザーアカウント単位で行われている
  • そもそも、他人があなたのコンピュータに自由にアクセスできる時点で、Chrome のセキュリティ以前の問題だ。本質を見ろ
  • ユーザーアカウントを切り替えずに他人にコンピュータを貸すとか、アカウントをロックせずにコンピュータの前を長時間離れるとかをやめろ
というわけで、あえて実装していないようです。
まあコレだけ読めば書いてあることはもっともですが、気になったのは最後の指摘。

本当に「コンピュータを貸すときにユーザーアカウントを切り替え」たり「コンピュータの前を長時間離れるときにアカウントをロックす」れば問題ないのか?

試してみました。

勘のいい人はピンと来たかもしれませんが、Chromeが使ってるデータファイルを抜き出せばログインしなくてもパスワードがわかるんじゃね?という話。

用意したのはPC2台。OSはLinux(Ubuntu MATE)。WindowsやmacOSでは状況が違ってたりしたらゴメンナサイ。
どちらもChromiumをインストール済みですが、一方はインストールした直後でもう一方はパスワードを1つ登録した状態です。

便宜上、パスワードを登録したPCを最澄、インストール直後のPCを空海と呼ぶことにします。
  1. 最澄にログインし、$HOME/.config/chromium以下をUSBメモリに保存
  2. 空海にログインし、USBメモリの中身を$HOME/.config/chromiumに保存
  3. 空海のChromiumを起動し、パスワードの管理画面を開く


最澄のパスワードを空海のPCで確認できました。
ここではChromiumを使いましたが、多分Chromeでも結果は同じようなものだと信じます。

「いやいやオマエ最澄にログインしとるやん。ログインしないっていう前提なのに何言ってんの?バカなの?死ぬの?」と言いたい人はちょっと我慢我慢。

ここでの肝は、設定ファイルを抜き出してしまえばパスワードがわかるという点。そして、少しPCに詳しければ他人のアカウントにログインせずにデータファイルを取り出すのはさほど難しくありません。
Unix系であればroot権限やsudo権限のあるユーザで他人のホームディレクトリを操作できますし、そもそもSystemRescueCdとかでブートして必要なボリュームをマウントしてしまえば元の権限とは無関係にrootを取れます。

つまり、ターゲットのアカウントでログインしていなくてもコンピュータの管理者であれば、あるいは管理者でなくてもUSBブートができる状況であればChromiumからパスワードを抜き出せるわけです。

ノートPCをカフェや電車に置き忘れて、悪い子に取られたらヤバいですよ。

もっとも、Firefoxでマスターパスワードを設定していても、ブラウザを開きっぱなしで画面ロックせずに席を離れたら危ないのは同じなのでそこはきちんとしてくださいね。

Googleに言いたいこと

少なくとも現在は「ログインしていなければ安全」や「パスワードロックをかけていれば安全」といった状況ではないので、マスターパスワードを実装しないのであれば「ログインしていなければ安全」という状態を確実に作ってほしいですね。

ドライブを暗号化すればいい?確かにそうなんでしょうけど、そこまでユーザに要求しますか?
Chromeって「安全なブラウザ」を標榜しているわけで、それはChrome単体で完結しないと意味がないと思うんですよ。「ドライブを暗号化すればChromeのパスワードを抜かれる心配はありません」って、「あなたが1000億円くれたら僕もモテモテです」みたいなもんじゃないですか。

賢いGoogleさんならきっと何か考えてくれるはず。

最後に

誰か1000億円くれないかな…

0 件のコメント:

コメントを投稿