Bluetooth経由でメールの内容が丸見えに


iPhoneでBluetooth対応デバイスを検出したところ

 皆さんは、Bluetoothというものをご存知でしょうか。「初めて聞いた」という方もいらっしゃるでしょうし、中には「普段使ってるよ」という方もいらっしゃると思います。最近ではケータイやモバイルオーディオなどをはじめとした様々な機器に搭載されていますので、使ったことはなくてもBluetooth対応機器自体はもしかしたらお手元にもあるかもしれませんね。

 Bluetoothには様々な種類の対応機器が存在するのですが、日常で目にする機会が比較的多いのは「ワイヤレスヘッドセット」でしょうか。これは音声通話をハンズフリーで行うためのイヤホン、マイク、操作ボタンなどが付いているワイヤレス機器で、Bluetooth対応ケータイなどと組み合わせて使います。

 片耳のみのものが多いようですが、音声をステレオで再生する両耳用のものもあります。また、音楽再生用のヘッドホンタイプのものもあります。最近の音楽再生機能付きケータイの中には、こうしたBluetooth対応ヘッドホンを使う前提なのか、従来の平型端子(ケータイにヘッドホン等をつなぐ為の薄い接続端子)がない機種もあるようです。

 詳細は後述しますが、このBluetoothというのは対応機器同士で非常に小規模な無線ネットワークを構成するための規格の1つです。Bluetoothの伝送範囲は約1~100mとデバイスの電源クラスによって異なりますが、一般的には約10mの範囲内でワイヤレス通信を行うための規格、と考えていいでしょう。

 今回は、このBluetooth通信に関する“落とし穴”を紹介します。

ものすごく気の合う人だと思っていたら……

 Aさんは大学生。進学を機に上京し、あこがれだった一人暮らしを始めました。何もかもが新鮮な生活に喜びと不安の入り混じる日々を送っていましたが、そんな新生活にも少しずつ慣れてきて、仲の良い友達も増えてきました。

 Aさんは新生活に合わせて新しいケータイを購入したのですが、音楽再生機能もFelica機能も付いていて、音楽プレーヤーとしても、また電車の定期券としても使えて、ちょっとしたお買い物にもすごく便利です。また、このケータイにはBluetooth機能も付いていて、ワイヤレスヘッドホンが使えました。せっかくなのでAさんはオススメのワイヤレスヘッドホンを一緒に購入し、ジャマなケーブルがないこのヘッドホンをとても気に入っていました。

 ある日、Aさんはとあるサークルの飲み会に出席したのですが、先輩Bさんと知り合いました。Bさんとは学部が別でだったので交流がなかったのですが、飲み会を通して仲良くなりました。Bさんはパソコンに詳しく、いつもモバイル端末を持ち歩いているような人でした。そういったモノが苦手なAさんにとって、Bさんはそれだけでも頼りになる存在だったのですが、話していると音楽の趣味がほとんど同じだったり、よく行く店が同じだったり、話をすればするほど不思議なくらい「気が合うな」と感じていました。

 そんなある日、Aさんはいつものように、お昼を学食でBさんと一緒に過ごしていました。すると、突然田舎の友人から電話がかかってきました。地元を離れているAさんは、思い出話に夢中で話し込んでしまいました。Aさんはそのことを申し訳ないと謝りつつ、Bさんともその話題で少し盛り上がりました。

 数日後、AさんはBさんとのいつもの何気ない会話に、ふと違和感を覚えました。それはBさんがあまりに詳しくAさんの地元のことを把握していると感じたからです。さらにBさんは、Aさんが話したことのない内容までわかっているようです。それは地元の友達とやり取りしたメールや、先日の友達との電話の内容にしかない、こちらの友達とは話したことが絶対にないはずの内容でした。

 いったいどうしてこんなことになってしまったのでしょうか。

Bluetoothとそのリスク

iPhoneでPINを入力する画面

 Bluetoothというのは、無線接続を意識せずに、常時つないだままで使用することを想定した規格です。ですから、規格自体には送受信の制御や秘匿性などはそれほど厳密には考慮されていません。

 Bluetoothはインターネットのようなインフラを介して機器同士が繋がる仕組みではなく、機器同士が相互接続する仕組みです。たとえばケータイとヘッドセットのような2つのデバイスが相互接続する方法を「ペアリング」と呼びます。

 Bluetoothでこのペアリングをしようとした場合、それぞれのデバイスはPINコードやパスキーなどと呼ばれる暗証番号のようなものを生成して、そのPINをお互いが共有し、接続が確立した後のすべての通信で利用します。これは秘匿性、そして同様の他の機器と誤って接続してしまうことを防ぐための仕組みです。

 イメージとしては、ケータイの赤外線通信、つまり「送信側と受信側が同じ数字を入力することで通信が成立する」という仕組みを想像するとわかりやすいかもしれません。そして、一度ペアリングが済んだ機器同士は、電源ONの状態でお互い通信が可能な範囲内にあれば、自動的に相互接続して通信を開始します。

 Bluetoothの仕様によれば、ペアリングに使用するPINの長さは最大128ビットまで使えます。ところが、多くの機器はデフォルト値で単なる十進数の4ケタ数字のPINを設定しています。機器によってはPINを入力する手段がないなどの理由から、PINが特定の4ケタ数字固定になっていて変えられないものもあります。

 以前もお話しましたが、数字のみ4ケタの暗証番号は、それこそ一瞬で、コンマゼロ何秒という単位で破ることが可能です。ですので、可能な限りは複雑なPINを使用したほうがいいのですが、話はそう簡単ではありません。

制限時間内にPINを入力しないとタイムアウトになる

 とあるケータイの注意書きに、以下のような文言があります。

 「パスキー入力は、セキュリティ確保のために30秒の制限時間が設けられています。」

 要するに、これはケータイのキー入力で、30秒以内に「PINの入力→OK」を完了しなくてはいけないという意味です。たとえば、PINを16ケタの英数字で設定したとしましょう。これのペアリングをケータイのキーで30秒以内に完了するというのは……なかなかハードルが高いのではないでしょうか。私には無理でした。

 こうした理由によって、BluetoothのPINは数字4ケタが一般的です。とある攻撃者がこのPINを手に入れた場合、ノートPCなどでPINを使って知らないうちにケータイなどに接続され、攻撃者によって音声通話を利用されたり、メールを見られたり勝手に送られたり、他にも電話帳の読み書きや通話の盗聴、インターネット接続などが実行可能な状態にされてしまう危険性があります。

 インターネット上には攻撃にも転用可能なソフトウェアや、そもそも攻撃を目的に制作されたと思われるソフトウェアなども複数公開されており、「ブルー・スナイパー・ライフル」などと呼ばれる、Bluetoothの通信をおよそ1マイル(約1.6km)離れた距離からモニターできる装置の作成方法なども公開されています。

 今回のBさんは、さすがにここまで大掛かりな装置を用いてAさんの“秘密”を入手したわけではないようですが、フリーソフトの中でもGUI(Graphical User Interface)を採用し、比較的カンタンな操作でペアリングを行えるツールを使用すれば、モバイル端末からケータイに接続することはそれほど難しいことではないのです。

そこまでの危機感、ホントに必要ですか?

 たとえば、普段聴いている音楽を盗聴されてしまう、といったような内容であれば、それほど実害はないと言えるかもしれません。しかし、上記のような悪意を持った攻撃者の場合、その程度では済まないかもしれません。こうしたリスクを避けるには、以下のような注意が必要です。

・PINを「入力可能な範囲内で極力長く」設定すること
・通常時はBluetoothをオフにしておき、使用するときのみオンに切り替えること
 ※できれば「非探知モード」ではなく「電源オフ」が望ましい
・重要な内容の含まれるメールや音声録音などを端末に保存したままにしないこと
・アップデートや修正プログラムをチェックし、デバイスを常に最新の状態すること

 このようなことを話すと怖くなるかもしれませんが、先ほど述べた「PINが4ケタ固定」という例でも気付く通り、使用する上での各機器のセキュリティレベルはその実装によっても異なります。

 なおかつ、前述のような各種攻撃ツールの存在も知られており、またBluetoothデバイスが接続可能モードでない場合(非探知モード)でも、攻撃者のデバイスと強制的にペアリングする手法なども、実は存在します。従って、上記の対策を実施したとしても「100%安全だ」と言い切れるわけではありません。

 ただし、これは今回の話に限らないのですが、こうした高度な攻撃にはそれなりの労力・コストや時間が必要になります。攻撃者というものは基本的に営利目的で攻撃をしかけてきます。ですから、そのコストに見合う情報がある対象(億万長者や重要な情報を持っている人など)でない限り、上記の対策を取っていれば、過剰に心配する必要はないと言っていいと思います。

 ITというのは私たちの生活を便利に、豊かにしてくれるもののはずですよね。「危険性があるから持つな」「危険性があるから使うな」という極端な対策のせいで、IT導入によってかえって不便な生活になった、なんて笑えない笑い話も時折耳にします。

 実際、「100%安全な対策」というのは、限りなく不可能に近い話です。こうしたITを利用する上で自己の安全を守るためには、リスクの存在を知ることはもちろん必要ですが、その上で「自分にとって適切な対策レベル」を把握し、上手に利用することが大事だと思います。


関連情報

2010/9/13 06:00


中山 貴禎
好奇心の赴くまま、様々な業種・業界を自由気ままに渡り歩いてきた自由人。現在はネットエージェント取締役。基本はジェネラリストだが異常なまでに負けず嫌いで、一度興味を持ったモノに対しては極めないと気が済まない。常識よりも自分の感覚を優先するが、自己主張よりも調和を重んじる。前世はきっと猫。