2013-09
04
06:44:48
ワンタイムパスワードの送付先にケータイメールは相応しくない


近年大手のWEBサービスも含めて所謂リスト攻撃などで不正ログインが多発するなどしており、一躍注目を集めているのが二要素認証(二段階認証)だ。通常のユーザーID/パスワードでの認証に加えて、その一時にだけ有効なワンタイムパスワード(OTP/One Time Password)を発行しこれも一致しないとログインを認めない方法である。
このワンタイムパスワードの発行方法またはユーザーへの送付方法には幾つかのパターンがある。
最も「厳しい」物理的なハードウェアトークンをユーザー毎に配布して表示される番号をワンタイムパスワードとして入力する方法(Paypalでの例)や、より簡易にスマホなどのソフトウェアでワンタイムパスワードを確認できる方法(有名なソフトウェアとしてはGoogle Authenticatorなどがある。但しサービスがこれらのソフトへ対応していないといけない)のほか、もっとも一般的には「ユーザーが別途指定したメールアドレスへワンタイムパスワードをメールする」方法がある。

ワンタイムパスワード自体は二要素認証のためだけの方法でも無い。ログイン時だけでは無く、例えば銀行サイトで他口座への振込などの資金移動をする際にワンタイムパスワードの設定をしていなければ操作できなくしている銀行も多い。これもまた近年高まっているセキュリティ保護の機運を反映したものだろう。

最近ではスマホなどモバイル環境の一般化によってか、「メールアドレスへのワンタイムパスワードの送付」パターンの場合にはPC用メールアドレスでは無く「ケータイメール」(すなわち携帯キャリアが提供しているメール)への送信を強く要請してくるようになった。
例えば三菱東京UFJ銀行や楽天銀行では最近になって「携帯メールでの登録」を勧める旨の記載が増えた。

三菱東京UFJ銀行 / インターネットバンキングのログイン時の本人確認方法を一部追加します。(平成24年2月12日(日)より)

楽天銀行 / セキュリティ強化のためのワンタイム認証のルール変更について

一方以下はGoogleでの二要素認証設定時の様子だ。ワンタイムパスワードの取得方法としてGoogle Authenticatorを使用することも出来るが、デフォルトではこのように各携帯キャリアのメールアドレスを指定することになっており、設定後は信頼できない端末からのログインの際はこのアドレスへワンタイムパスワードが送られる。

スクリーンショット 2013-08-02 5.19.49

前述の通り幾つかのバリエーションはあるものの、これらの例のように近年ではワンタイムパスワードは「ケータイメール」へ送付することが大変一般的になってきたと感じるし、実際多くの方がそのようにされているのでは無いだろうか。

しかしながらPCメールなどよりも「ケータイメール」をワンタイムパスワードの入手元とすることは果たして「より安全」な方法だろうか。

安全なワンタイムパスワードの入手条件とは

そもそも二要素認証にせよ銀行サイトなどでのクリティカルな操作のためであれ、ワンタイムパスワードを「安全に」利用者へ届けることの意味は「第三者が不正にワンタイムパスワードを傍受できる可能性をできるだけ減らす」のが目標と言えるだろう。
例えば近年ケータイメールへの送付を推奨されることが多くなってきたのも「ケータイやスマホは個人の所有物であり他人が操作する機会は少ない」からだ。もちろん紛失や盗難のリスクはあるにせよ、「ケータイメールはその端末の所有者しか読めない」前提があるからだと考えられる。この考え方自体はワンタイムパスワードの理にかなっており正しい。
しかし本当に「ケータイメールはその端末でしか読めない」だろうか。いや、それがそうでもないのである。

多くのケータイメールは携帯端末以外からでも読むことができる

以下は主なキャリアでのケータイメールが「携帯端末以外からもアクセス可能かどうか」調査したものだ。ケータイメールアドレス(ドメイン)はGoogleの二要素認証設定画面で用意されていたものを流用したので、実際には他にもあるかも知れない。

事業者 メールドメイン メールプロトコル 外部PCなどからアクセス可能かどうか 備考
NTTドコモ docomo.ne.jp iモード/spモード/2013-10よりドコモメール化 現在でもiモード.netでPCなどからアクセス可能
docomo.blackberry.com IMAP ×
KDDI ezweb.ne.jp MMS au oneとの連携で可能とのこと。また後続サービスも予定されている
ソフトバンク softbank.ne.jp MMS/S!メール(MMS)どこでもアクセス My Softbank(ブラウザベース)からの送受信に対応する
t.vodafone.ne.jp MMS/S!メール(MMS)どこでもアクセス(?) 恐らくはS!メール(MMS)どこでもアクセスにも対応するものと考えられるがカスタマーサポートでも不明
d.vodafone.ne.jp
h.vodafone.ne.jp
c.vodafone.ne.jp
k.vodafone.ne.jp
r.vodafone.ne.jp
n.vodafone.ne.jp
s.vodafone.ne.jp
q.vodafone.ne.jp
i.softbank.jp IMAP
ディズニーモバイル(ソフトバンク) disney.ne.jp MMS/S!メール(MMS)どこでもアクセス(?) 恐らくはS!メール(MMS)どこでもアクセスにも対応するものと考えられるがカスタマーサポートでも不明
イーモバイル emnet.ne.jp MMS ×
ウィルコム willcom.com POP準拠 PHS網からのみ可。但しダイヤルアップ接続で不可能では無い模様
pdx.ne.jp
wm.pdx.ne.jp
dk.pdx.ne.jp
di.pdx.ne.jp
dj.pdx.ne.jp

ご覧のように実は多くのケータイメールは「携帯端末以外からのアクセス可能」であるかアクセス可能となるように改修が進んでいる最中である。特に主要3キャリアについては今後数ヶ月以内でその携帯端末以外から確実にアクセス可能となる予定だ。
もちろんそのことがすぐにワンタイムパスワードの脆弱性などになるわけではない。これまでも(または今でも)PCメールでワンタイムパスワードを受け取る例も多いし、様々なアクセス手段があるとしても複雑なパスワードや他サービスとは異なったパスワードを付けるなど気をつけることでリスクを無くすことも可能だろう。
しかしながら必ずしも「PCメールよりもケータイメールの方が安全」であったりまたは推奨されたり若しくは極端な場合強制されるようなことでは無いのは理解してもらえるのでは無いだろうか。
少なくともあなたが普段使っているケータイメールは今や「他の端末やPCからもアクセス可能」になろうとしつつある。

ケータイメールの代わりとしてのSMSのススメ

実はこうしたことに言及したのには理由がある。日本以外の国ではこうしたキャリアのインターネット形式の「ケータイメール」が一般的なことは無い。他国ではこうした場合例外なくSMSが使われるからだ。

以下はやはりGoogleの二段階認証の設定画面例だが、例えばアメリカに限らず他の国でも「例外なく」送付先として電話番号を求められる。つまりSMSが前提なのである。

スクリーンショット 2013-08-02 5.22.15

ワンタイムパスワードのような用途ではSMSはまさに適役だ。メールとしての送信・受信は電話番号と強固に結びついているためその仕組み上、その電話番号が登録されたSIMカードや端末以外では利用できないことは確実に保証される。「端末を介した認証」の小道具としてはうってつけなのである。

では何故日本だけが「特殊」なのか。
ここから先は想像になるが、そもそも日本ではSMSが一般化してこなかったことが大きいだろう。キャリアがケータイメールを強力に推進したからと言うのもあるが、逆にSMSは「全く使えないもの」だった。
実は昨年の7月まではキャリア同士の送受信が行えなかったのである(という事実を逆に今もまだ送受信できないと思っている方も多いことだろう)。それでは当然使うユーザーなどいるはずも無い。
SMS自体は携帯技術における初期からの基本的な機能なので、日本のキャリアでもキャリア内ユーザー同士に限られていたとは言え、10年以上昔から当然存在していた。それが何故昨年までキャリア間送受信ができなかったのかは不明だが、どうやら日本特有の絵文字の相互変換などで複雑な処理が必要だったからでは無いかと思う。
また海外ではSMSゲートウェイというインターネット環境などからSMS送信を仲介するプロバイダーも存在するが、日本国内ではまず聞かない。
筆者も詳しくはよく知らないのだが、少なくとも日本ではSMSをビジネスで利用する環境も乏しくまたコストも多くかかるのかも知れない。
いや、それ以上に「日本で携帯のためのメールと言えばケータイメールしか無い」という、当のエンジニアも含めた思い込みが多いのでは無いか。そしてまたそのケータイメールが実は携帯だけのメールでは無くなりつつあることやSMSが比較的他国と同様に使えるようになってきていることが知られていないのでは無いだろうか。

であるならばワンタイムパスワードはできるだけSMSを利用するように方針が転換されるべきだ。何より「ケータイメールはその端末でしか読めないから安全だ」という思い込みがもし前提にあるのであれば是正されなければならない。

社会としての「セキュリティ・バイ・デザイン」

少し視点を変えた話もしておきたい。
こうした「ワンタイムパスワードの一般化」「ケータイメールの前提の変貌」「SMSの進化(いや、他国並みになっただけと言うべきか)」というのは全く別々の社会的事象である。当然そもそも関連性など無い。
しかしながら社会的要請として「ワンタイムパスワードをより安全に送付する」という目的から見た時には絶対的な関連性または連携が必要となる場合がある。
逆に「日本での携帯メールはこういうものだから」「SMSって確か他社には送れないし」という旧態の前提で取り組んでいては全く進歩しない、どころか意図に反してよりリスクを大きくしてしまう場合もあるかも知れない。
それらを網羅的に捉え直すことこそがまさに「セキュリティ・バイ・デザイン」という意味だろうが、現実問題としてそこまで様々な要因を見通せたり調整したり推進することは、社会的なオーガナイザーや横断的な業界組織が必要だろう。しかし無論そんなものは少なくとも現時点では存在していないのである。
であるならば、ベンチャー等ならともかくそれなりの規模の企業であるなら、社会や他社の前提に飲まれるのでは無く、ぜひ「あの会社がこう変えてくれればよりよくなるのに」「あの会社のこの前提は社会的にマズい」という点をぜひ打ち出して欲しい。受け身で自分たちで作った枠で仕事をするので無くて、よりアグレッシブでアクティブな活動であって欲しいと思う。
そしてそれはまさに例えば開発者一人一人の「キヅキ」にも依存しているはずだし、それこそが「社会としてのセキュリティ・バイ・デザイン」の第一歩では無いだろうか。

 

 

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)