多くのモバイルアプリケーションにはハードコードされた秘密の機能がある。この機能を使うと、他人のプライベートデータにアクセスしたり、ユーザーが提供するコンテンツをブロックしたりできることが、研究チームの調査によって判明した。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
多くのモバイルアプリケーションにはハードコードされた秘密の機能がある。この機能を使うと、他人のプライベートデータにアクセスしたり、ユーザーが提供するコンテンツをブロックしたりできることが、研究チームの調査によって判明した。
米国のオハイオ州立大学とニューヨーク大学、ドイツのCISPAヘルムホルツ情報セキュリティセンターに所属するサイバーセキュリティ研究者からなるチームによる発見だ。
研究チームは、2020年5月に開催予定のオンラインカンファレンス「2020 IEEE Symposium on Security and Privacy」において、研究結果をまとめた論文を発表する。
研究チームは15万種類のアプリケーションを評価した。内訳は、Google Playストアでダウンロード回数が多い上位10万種類、それ以外の代替市場で出回っている2万種類、Androidスマートフォンにプリインストールされている3万種類だ。
研究チームは、このうち1万2706種類(全体の約8.5%)のアプリケーションに、同チームが「バックドアシークレット」と呼ぶ隠れた挙動が存在することを発見した。プリインストールソフトでは比率が15.96%と高い。Google Playストアで調べたアプリケーションのうち6.86%、代替市場は5.32%だった。
バックドアシークレットは、特定の種類の情報を受け入れ、これをトリガとして、一般のユーザーには知られていない振る舞いを行うというものだ。
例えば、一部のアプリケーションには「マスターパスワード」が組み込まれており、このパスワードを使って、アプリケーションとその内部に保存されたプライベートデータにアクセスできる。さらに、決済の回避といった隠れたオプションを有効にする秘密のアクセスキーがあるアプリケーションが存在することも分かった。
バックドアシークレットの内、秘密のアクセスキーを持つアプリケーションは7584種類、マスターパスワードを持つものは501種類、秘密の特権コマンドを持つものは6013種類見つかった。
オハイオ州立大学コンピュータ科学工学部の准教授で、論文の上席著者であるジキアン・リン(Zhiqiang Lin)氏はこう語った。「攻撃者がこうしたバックドアシークレットを把握すると、ユーザーも開発者も危険にさらされる。実際、攻撃者がモバイルアプリケーションをリバースエンジニアリングして、バックドアシークレットを発見することが可能だ」。例えばわずか4桁の数字がマスターパスワードに使われている例もあった。
オハイオ州立大学の大学院生で研究助手を務め、論文の筆頭著者であるチンチュワン・チャオ(Chaoshun Zuo)氏は、こう指摘した。「開発者が誤った信頼を置いているため、モバイルアプリケーションにこうしたバックドアシークレットを作ってしまう。アプリケーションを本当に保護するには、セキュリティ上、有意義なユーザー入力検証機能を組み込むとともに、機密データをバックエンドサーバに置く必要がある」
研究チームは、4028種類(評価全体の約2.7%)のアプリケーションが、検閲やサイバーいじめ、差別の防止という理由から、特定のキーワードを含むコンテンツをブロックすることも発見した。Google Playストアの10万種類のうち、1.98%がブロック機能を備えていた。代替市場の2万種類のうち4.46%、プリインストールの3万種類のうち3.87%も備えていた。
「アプリケーションが特定の種類のコンテンツを制限するのは、意外ではないが、これらのアプリケーションがリモートではなく、ローカルでコンテンツを検証するのは驚きだ」(リン氏)
「ユーザーが生成したコンテンツが、公開前に規制されたり、フィルタリングされたりする場合があるプラットフォームはたくさんある」とリン氏は述べ、FacebookやInstagram、Tumblrなど、幾つかのソーシャルメディアサイトは、ユーザーが公開できるコンテンツを既に制限していると指摘した。
「だが、問題もあるかもしれない。ユーザーは、こうしたプラットフォームのポリシーで特定の言葉が禁止されていることを知っているものの、具体的にどの言葉が禁止されているのかは知らないため、コンテンツをブロックされてしまう可能性がある。このため、禁止されている言葉の例を示し、ポリシーを明確化してほしいと思うかもしれない」(リン氏)
また、検閲の研究者も、どのような言葉が問題視されるのか理解したいと考えるかもしれないと、同氏は語った。
研究チームは、開発者がアプリケーションの弱点を理解するのに役立つオープンソースツール「InputScope」を開発済みだ(2019年に発表)。このツールは、アプリケーションのリバースエンジニアリングプロセスを完全に自動化できる。今回の研究でもInputScopeを利用した。
Copyright © ITmedia, Inc. All Rights Reserved.