「Rakuten Link」のSMS認証に潜む重大な欠陥

4月8日に本格始動した楽天モバイル(MNO)には、「Rakuten Link」という電話やSMSを通信回線に関係なく利用できるサービスがあります。Wi-Fi経由ではもちろん、海外旅行中など他のSIMカードに差し替えている時でもいつもの番号で通話できる素晴らしいサービスです。

しかし、上の記事で紹介した通り、「楽天のSIMが入っていない別のスマホでも設定できる」仕様なので、その自由度ゆえにセキュリティをしっかりと担保してもらわないと「乗っ取り」の危険性があることは想像に難くありません。Linkのログイン時にはSMS認証を求められる(=その電話番号を使える本来のSIMカードが手元にないと設定できない)のでまあ大丈夫、と思っていたのですが……。

なんと恐ろしいことに、セキュリティの要所となるSMS認証にあまりにも分かりやすい抜け穴が作られていることが発覚し、一部のユーザーの間で話題になっています。

まず、Rakuten Linkの設定方法を簡単に説明しておきます。スマートフォン(※楽天のSIMが入っていない状態でも構いません)にLinkアプリをインストールして起動。楽天アカウントのログインを求められるので、楽天モバイルの契約と紐付いているアカウントでログインします。

次に、楽天モバイル回線の電話番号を入力してSMS認証へ。認証コードがSMSで送られ、それを入力すればLinkが有効になるという流れです。

問題が潜んでいるのはこのSMS認証。「まったく認証していない」というわけではありません。適当に数字を押してみても(111111など)さすがに通りませんでした。

しかし、ここに電話番号の下6桁を入れると通ってしまうんですよね。もちろん、SMSで届いた本来の認証コードが下6桁と一致していたわけではありません。

何でも通るわけではないことからするとSMS認証が実装されていないわけではないのでしょう。推測ですが、「通常回線もLinkも使えないデッドロック状態に陥ってしまった時のためにサポート用としてマスターキー的な番号を残していた」というのはありそうな話です。そんなことをしたらSMS認証の意味がありませんし、ましてや下6桁なんて分かりやすい番号にしてしまうのは……。

「実はまったくSMS認証できてませんでした」よりも「電話番号の下6桁なら実は通ります」の方が、危険性を理解せず故意にやっている可能性がある分、はるかに怖いと思うのは私だけでしょうか。


もちろん、先に設定の流れを説明したように「楽天アカウント」「SMS認証(仮)」の二段階でログインするので、「電話番号を知られたが最後、乗っ取り放題になる」というわけではありません。しかし、大規模流出にしてもソーシャルハッキングにしても、漏れる時はID・パスワード・電話番号の3点がセットで漏れる可能性って決して低くありませんよね。この仕様に関しては強く再考を促したいです。

楽天モバイルに対して「本当にこれでMNOをやれるのか、その覚悟はあるのか」と思う出来事はこの2年間多々ありましたが、さすがに今回はこれまでの楽天モバイル伝説の中でもトップクラスに呆れたというか……。残念ですが、当面は楽天モバイルで使っている電話番号は誰にも知られないように使っていこうと思います。

追記:修正されました

本記事の公開後、24時間以内のスピード対応で「Rakuten Link」の仕様が修正されたことを確認しました。上記の記事に続報をまとめております。

楽天モバイル(Rakuten UN-LIMIT)を申し込む

関連記事