「Androidスマートフォンの一部に「最初から」潜む脆弱性、新たに146件も見つかる」の写真・リンク付きの記事はこちら

Androidスマートフォンを購入する際、端末のOSが100パーセント完全なAndroidであることはほとんどない。メーカーや通信会社が自社のアプリを押し込んだり、新たなインターフェイスを実装したりしているからだ。

こうしてプリインストールされたソフトウェアと標準的なAndroidのごった煮には、ときに“悪臭”が立ち込め、箱から取り出す前にすでに欠陥や脆弱性が埋め込まれている。どれほどひどい状態であるかを示す証拠として、Androidスマートフォンのメーカー29社で同時に明らかになった146件の脆弱性を挙げれば十分だろう。

そう、146件である。すべてセキュリティ企業のKryptowireが発見し、膨大な公表資料のなかで一つひとつ詳細が説明されている。今回の脆弱性が影響する企業の多くはアジア地域で中心で、リストにはサムスンやASUSといった世界的な大手企業も含まれる。

問題の深刻度や範囲には、ばらつきがある(そもそも脅威ではないとメーカーが主張する場合もある)。だが、そこにはAndroid固有の問題が示されており、それをグーグルも認識している。

関連記事:Facebookからヤフーまで、数千ものAndroidアプリに「脆弱性のあるコード」が含まれている:調査結果

システムの段階で組み込まれた脆弱性

米国土安全保障省が資金を拠出している研究によってKryptowireが明らかにした脆弱性には、さまざまな問題が含まれている。無許可の音声録音、不正なコマンドの実行、システムやワイヤレス通信の設定変更といったものだ。これらの脆弱性に関して悪質と言えるのは、端末に組み込まれていく過程と、それらを取り除くことが難しい点にある。

「ユーザーがアプリをダウンロードしなくても、第三者がいかに簡単にデヴァイスに侵入できるのかを理解することが目的でした」と、Kryptowireの最高経営責任者(CEO)のアンジェロス・スタヴロウは言う。「もし問題がデヴァイスの内部にあれば、ユーザーには選択肢がないことになります。コードがシステムの奥深くに埋め込まれているので、ユーザーが問題を取り除くためにできることはほとんど何もありません」

マルウェアが仕込まれた偽のAndroid版「Fortnite」をダウンロードしてしまったとしても、それには仕方ないところがある。少なくとも自分で選択したことであり、アンインストールすることもできる。これに対してKryptowireが見つけた脆弱性は、しばしばシステムレヴェルでプリインストールされている。つまり、デヴァイスから追放する方法はない。

端末がなくてもファームウェアをスキャン

こうした話になんとなく聞き覚えがあるなら、それはKryptowireがこれまでにも取り組んできた活動だからだろう。同社は1年ほど前に同じような調査結果を発表したが、そのときの結果は、人気のAndroidデヴァイス10モデルに似たような“欠陥”が組み込まれているというものだった。

前回との違いや調査が広範に及んだ理由は、デヴァイスの実物が手元になくてもファームウェアの問題をスキャンできるツールを調査チームが開発したからだ。このツールはスキャンを実行後、脆弱性の存在を検証するための概念実証を数分で自動生成し、誤検出をなくす。

このツールが見つけ出すのは、スタヴロウが言うところの「安全ではない状態」である。勝手にスクリーンショットを撮影したり、意図せず音声を録音したり、不要なネットワーク接続を確立したりといったことだ。これらはときに信頼の問題になってくる。Kryptowireが発見した脆弱性の多くは、ユーザーの自覚や同意がないままアプリが設定を変更したりすることが可能になるからだ。

「もし端末メーカーの立場であれば、システムにおいてメーカーと同じレヴェルのパーミッションを第三者に許可すべきではありません」と、スタヴロウは言う。「ましてや自動的に実行されるべきものでもありません」

端末の低価格化競争にも一因

一連の問題に対してグーグルは、「わたしたちと連携しながら、責任をもって問題の修正と開示に協力してくださっている研究者のコミュニティには感謝しています」とコメントを出している。グーグルにも独自の審査プロセスがあり、「Build Test Suite(BTS)」と呼ばれている。これは有害になりうるプリインストールアプリのソフトウェアをチェックするものだ。BTSは18年に開始され、最初の1年で242件の問題が消費者の端末に組み込まれることを防いだ。

Kryptowireの調査からは、グーグルのBTSに改善の余地があることが示されている。公正を期すために言っておくと、これは膨大な範囲に及ぶ問題だ。グーグルのセキュリティリサーチャーであるマディー・ストーンによる今夏の発表によると、Android端末1台につき100〜400のアプリがプリインストールされた状態で出荷される。

これらのアプリの多くは、端末を物理的に生産するメーカーによるものではない。見えないところでさまざまな動きをするサードパーティーのコードや、メッセージから決済まであらゆる部分に既得権益をもつ通信事業者が手がけたものである。ほとんどのメーカーには、これらのアプリの潜在的なリスクを解析するだけの体制がない。最大手のメーカーでさえ、通信事業者の影響を排除することはできないのだ。

「このエコシステムには、必ずしも互いに協力しなかったり、品質保証のプロセスが整っていないヴェンダーが何百社も含まれています。たとえ整っていたとしても、他社よりも余計なプロセスがかかるヴェンダーもあります」と、スタヴロウは言う。「端末の低価格化競争を通じてソフトウェアの質が損なわれ、ユーザーを危険に晒す方向に進んでいるのではないでしょうか」

サムスンの反論にKryptowireは異議

Kryptowireは今年の夏、グーグルやメーカー29社に今回の発見を時間をかけて通知し始めた。影響を受けたメーカーのすべてが事態の深刻さを認めたわけではない。Kryptowireはサムスンの端末について33の脆弱性を明らかにしたが、これらの出元は6つのプリインストールアプリだった(さらに2つのアプリにバグを発見したが、それは第三者によってマルウェアを仕込まれたファームウェアにのみ見つかったもので、最終報告書には含まれてない)。

6つのプリインストールアプリうち、2つは外部のパートナー企業が開発したものである。いまだにサムスンの端末に影響を及ぼしているが、サムスンは調査チームに問題を他社に伝えるよう指示した。

残りの4つについてはサムスンは、Androidが備える広範なセキュリティフレームワークのおかげで危険はないと指摘している。「Kryptowireからの指摘あってから、わたしたちは問題のアプリを早急に調査し、しかるべき保護がすでに適用されていると判断しました」と同社はコメントを出した。

このコメントにKryptowireは異議を唱える。「(問題がある)サムスンのアプリは、端末生産のサプライチェーンにおける第三者が、気づかれることも許可を得ることもなく情報にアクセスするために使える状態になっています」と、同社の製品担当ヴァイスプレジデントのトム・カリヤンニスは指摘する。「現行のAndroidのセキュリティフレームワークの設計では、それをいますぐ防ぐことはできないのです」

大手以外の端末に潜む問題

少なくともサムスンには、報告された脆弱性を調査するだけのリソースがある。多くのAndroidスマートフォンメーカーは、欠陥の報告や発見時の修正についての明確なプロセスを明らかにしていない。

グーグルが自ら手がけたスマートフォン「Pixel」シリーズや、リソースが充実している一部のメーカーを除けば、よくてもセキュリティ対策のアップデートは遅々としている。そもそも欠陥の出元が他社のコードである場合は、幸運を祈るしかないだろう。

もし希望があるとするなら、欠陥がプリインストールされる事態を防ぐべくグーグルが事前に手続きを踏んでいることだろう。だが、Kryptowireの徹底調査が示す通り、エコシステム全体では解決への道のりは長い。

※『WIRED』によるAndroidの関連記事はこちら。