スマートフォン市場には、常に次世代の機能を備えた最新機種が出回っている。自分の携帯電話が時代遅れに感じられるくらいだ。

だがどれだけ新しい機種が現れようと、それらはさまざまな面で数十年前の電子機器をベースとしている。実際に20世紀の電話技術を使うことで、現在メインストリームになっているスマートフォンの多くに21世紀流の攻撃を仕掛けられるのだ。

1980年代に生まれた技術でハッキング

フロリダ大学、ストーニーブルック大学、サムスン・リサーチ・アメリカの研究チームは、1980年代に開発されたモデム用の命令体系である「ATコマンド」を利用して、Android機器に危害を加えられることを発見した。

モデムと電話回線を制御するこのATコマンドは、もともとは電話をかけたり切ったりといった指示を送るために使われていた。その後、ときが経つにつれてSMSや3G、LTEといった新しいプロトコルにも利用され、やがてはスマートフォンでカメラを起動したり、タッチスクリーンを制御したりするためのカスタムコマンドにも使われるようになった。

研究チームは、18年8月にボルティモアで開かれた「USENIX Security Symposium」で研究結果を発表した。

通常、メーカーは実地試験やデバッグ作業のために、端末がATコマンドの入力を受け付けるように設定する。しかし、現在主流となっているスマートフォンの大半は、端末が消費者の手に渡ったあとでも、USBポートを通して誰でもコマンドを利用できる状態にあるという。

つまり、攻撃者は有害な充電スポットを設置したり、改造された充電ケーブルをばらまいたりすることによって、端末の乗っ取りやデータの抜き取り、ロック画面のすり抜けといったことができてしまうのだ。

「スマートフォンにUSBケーブルをつなげ、ちょっとしたスクリプトを実行してUSBインターフェースの設定を変え、端末がATコマンドを受け付けられるようにします。そうすると、コマンド送ってその端末を動かせるようになるのです」。この研究に参加した研究者のひとりで、フロリダ大学で組込みセキュリティーを研究しているケヴィン・バトラーは言う。

「ATコマンドには当然正当な利用法もありますが、一般利用のために設計されたものではないでしょう。われわれはATコマンドを3,500以上発見しましたが、その大多数はどこにも記録されていなかったものです」

ATコマンドを使えば、例えば攻撃者がスマートフォンのロック画面をすり抜けるコマンドを送り込み、「タッチ・イヴェント」（タッチ操作を擬似的に実行する機能）を利用して、好きなようにデータにアクセスしたり設定を変えたりといったこと可能になる。

「充電モード」でも使えるATコマンド

メーカーが自らコマンドを公開することはない。このため研究者たちは、さまざまな種類のスマートフォンで作動する基礎コードをリヴァースエンジニアリングによって解析し、見つかったコマンドの機能を探るためのテストを行った。

初期調査にあたり、研究チームは11の販売業者の協力を得て、2,000のAndroidのファームウェアイメージを検査した。次に彼らは4ブランドの8機種に対して、各機種に照準をあわせた攻撃を仕掛けるテストを行った。

すべてのAndroid機が脆弱性をもつわけではない。しかし、もし混雑した空港に有害な充電スポットが設置された場合、乗っ取られる端末がいくつか出てきてしまうだろうと研究者たちは言う。

またAndroidの「充電モード」も、ATコマンドを通じた攻撃には概して効果がないと彼らは指摘した。充電モードは常に有効になるようデフォルト設定されているわけではない。しかし有効になっている場合も、充電スポットが危険であろうと、そこに接続してもよいか尋ねるポップアップが表示されている間にATコマンドを送り込めてしまうという。

「われわれの見たところ、どうやらATコマンドが異なれば攻撃されるレイヤーも異なるようです」とバトラーは言う。

「標準的なコマンドのいくつかは、無線インターフェイスを攻撃します。ベースバンドプロセッサーがあり、通話機能を司るレイヤーです。一方、写真撮影などの動作を許可するコマンドはAndroidレイヤー、つまりスマートフォン本体ではなくオペレーティングシステムそのものによって読み取られます」

「インターフェイスは従来のような電話使用を目的に設計されていますが、それを基盤とすることでファームウェアの書き換えやタッチスクリーンの操作といった、はるかに強力な指示を実行することが可能になっているのです」

グーグルだけで解決できる問題ではない

USBインターフェースを使ったATコマンドに関する発見に加え、研究者たちはBluetoothといったほかの接続機能もATコマンドの影響を受けることを指摘している。つまり、USBポート以外からもATコマンドを悪用した攻撃を受ける可能性があるということになる。

「これからの数年で間違いなく、この攻撃経路からくる新たな脆弱性があらわになっていくはずです」と、アルフォンソ・ムニョースは言う。彼はスペインのソフトウェア開発企業BBVA Next Technologiesのセキュリティー研究者で、ATコマンドの危険性について研究している。「ATコマンドを基に新しく実装されたものは、まだセキュリティーの観点から十分に分析されていないと言えます」

サムスン電子とLGエレクトロニクスは、ともにUSB経由のATコマンドを遮断するパッチを公開した。フロリダ大学のバトラーいわく、研究チームはほかの多くの企業とも連携を取って改善にあたっているという。

端末がATコマンドを受信するかどうか、そしてどうやって受信するのかは、それぞれのメーカーがそのAndroidをどのように実装しているかにかかわっている。そうやらグーグルだけで解決できる問題ではなさそうだ。

もしすべてのメーカーがパッチをリリースしたとしても、それをどうやって配布するかという問題が残るとバトラーは警告している。多くの企業ではAndroid機器へのサポート期間が2～3年であるうえ、キャリアの違いなどによってAndroid機器のユーザーが細分化されていることで、パッチの受け取りが大きく遅れる端末が数多く出てくる可能性があるからだ。

ATコマンドの危険性についての研究は、まだ始まったばかりである。

「こうしたコマンドを受け取らないと思われる機種もいくつかありました」とバトラーは言う。「しかしながら、その機種に脆弱性がないと言い切るのは尚早だと思います。われわれはまだ氷山の一角しか目にしていないのですから」