そのアプリは安全ですか?アンドロイドユーザーがモバイルデバイスと個人データを保護するためのヒント

モバイルセキュリティの大原則は、「不明なソースやストアからアプリをインストールしないこと」に尽きます。

ほとんどのアンドロイド系モバイルデバイスには、アプリのインストール元をGoogle Playストアのみに限定するための設定項目があり、セキュリティの専門家は、この機能を無効にしないように繰り返し忠告してきました。しかし、過去数年間に渡り、Google play ストア内で悪意のあるモバイルアプリが出回る事例が数多く見られているのです。

グーグル自身が運営するこのサービスは、モバイルデバイスの機能を充実させるツールを求めるユーザーにとって、安心・安全な場所であることが求められています。それにもかかわらず、詐欺行為やセキュリティを脅かす犯罪者によって、攻撃経路として利用されるケースが増えているのが現状です。Google Play ストアは、同社のエコシステムにおいて信頼に足る要素の1つとはいえ、一旦、このセキュリティ障壁をすり抜けることに成功すれば、アンドロイドだけで文字通り月間のべ数十億台というアクティブデバイスから成る巨大な攻撃対象に、悪意のあるハッカーがアクセスできるようになってしまいます。

何よりも、各デバイスの向こう側には生身のユーザーがいるわけですから、その個人データや財務データが危険にさらされる可能性は無視できません。また、ユーザーがGoogle Play ストアを使用する際にさまざまなリスクにさらされる一方で、そこにアプリを登録している企業やブランドも問題に直面します。というのは、詐欺師たちは信頼のあるブランド名の悪用を好むため、結果的に、本来のブランド力や評判が落ち、正規のアプリとそのベンダーにも悪影響が及ぶのです。そして、偽のアプリやベンダーが報告されるたびにグーグル自身も信用を落とし、影響を受けることになります。

それでは、グーグルは自社のユーザーを保護できていないのでしょうか。また、同社のプラットフォームが直面している課題を克服する方法はあるのでしょうか。

本稿では、悪意のあるアプリに起因する主な脅威とこの問題の規模の大きさについて論じ、さらにユーザーがモバイルデバイスの安全を守るうえで役立つ、基本的な推奨事項の概要を示します。また、Google Play ストアから悪意のある試みを一掃するべく、グーグルやセキュリティ業界が講じている対策についても見ていくことにしましょう。

Google Play ストア:プラットフォーム上の深刻な問題

グーグルの戦略は、完全なエコシステムを構築して、ユーザーが同社のソリューションを最大限に利用できるようにすることです。そしてグーグルは、どのようなサービスをユーザーに提供すべきかをよく知っています。「Gスイート」のサービス群について考えてみましょう。Gスイートは基本的に、クラウド上のグーグルドキュメントでの共同作業から、グーグル・ハングアウトを使ったビデオ会議まで、日常的な業務チームのニーズに対応します。そのすべてが、クロームOSを実行するクロームブック、ネクサス端末、ピクセルタブレットといった異なるグーグルのプラットフォーム間でシームレスに統合されています。

仕事であれ、娯楽であれ、勉強であれ、ユーザーのあらゆるニーズに対応する、トータルな環境をユーザーに提供することに全力を注ぐのが、昨今の大手IT企業です。また、そうしたIT企業は、テクノロジーの進歩に合わせて誕生する個々のニッチ市場を利用したビジネスによって、ユーザー基盤や収入、市場シェアを確保しています。

信じられないというなら、2018年の広告に関するトレンドを取り上げた音声検索市場やスマートホームアシスタントの成長に関する記事に、目を通してみてください。おなじみの業界トップ企業の名前を目にされることでしょう。

こうした観点からも、ここで、グーグルの検索事業についても説明しておきましょう。

グーグルの主な収入源は広告技術と検索ですから、ユーザーが同社のプラットフォーム上に長くとどまるほど、より多くの検索が行われ、より多くの広告がユーザーに提示されるということになります。わかりやすい例として、Gメールのアカウントに対する広告表示が挙げられます。Gメールの広告はユーザーの属性に応じて、またユーザーがオンラインで行うあらゆる操作に応じて表示されます。

モバイル環境では、グーグルのアンドロイドOSが、数の面でのプラットフォームとして優勢であり、IDCの調査では、2017年第1四半期における市場シェアの実に85%を占めました。アンドロイドOSはリナックスをベースとし、一部はオープンソースです。そのため、グーグルが開発・保守するOSコードは、サムスンなどのデバイスベンダーをはじめとする他の関係者も自由に利用したり改変することが可能です。このようなオープン性が、アンドロイドの人気と市場における現在の優勢を後押ししたといえます。

その貢献はかなりのものです。マーケティング関連の統計情報を提供しているスタティスタのデータによると、Google Play ストア内のアプリの数は、201712月の時点でおよそ350万件に上ると推定されています。また、モバイル市場の分析を手がける企業、アップアニーによる集計では、2017年第4四半期のアプリのダウンロード数は190億件を超えました

そして、Google Play ストアには日々新しいアプリが公開されていますが、そのすべてが善意によるものではありません。事実、グーグルの自社レポートでも、悪意のあるアプリが大量に存在していることが報告されています。2017年、グーグルはGoogle Play ストアのポリシーに違反した70万本を超えるアプリを削除しました。これは、2016年より70%も多い数字です。朗報は、新たな検出技術のおかげで、ユーザーがインストールする前にそのようなアプリの99%が特定されたことでしょう。ただし、違反アプリの総数を考えると、検出を逃れた残りの1%でさえ、十分に大きな数字といえる点は残念です。

危険なアプリがGoogle Play ストアに侵入する手口

グーグルは自社プラットフォームを利用しやすさを重視し、なるべく多くの開発者が手がけた多様なアプリをストアで公開できるように門戸を開いています。こうした戦略はアンドロイド体験の充実を図るためのものですが、悪意のある攻撃者の侵入をくい止めるという点では裏目に出ています。4つの基本ステップを終えて、25ドルの登録料を支払うだけで、誰でも開発者用のコンソール画面からストアのプラットフォームにアクセスして、アプリをアップロードできるようになるためです。正直なところ、このプロセスはサイバー犯罪者にとって(あるいは、誰にとっても)それほど複雑な関門ではありません。もし善意のアプリだけを揃えたいのであれば、この手順に何らかの追加審査を採用すべきでしょう。

悪意のあるアプリがGoogle Play ストアに公開される別の要因としては、巧みな回避策が挙げられます。悪意のある攻撃者は、多種多様な手口でグーグルのレーダーをかいくぐろうとするのです。その1つが、悪意のあるコードのアクティベーションや実行を遅らせる手法であり、煩わしい広告を表示する迷惑なアプリからランサムウェアに至るまで広く利用されています。

では、この回避策はどのようにして行われるのでしょうか。

無害を装う悪意のあるアプリは、インストール後もしばらくは、有害な行為や疑わしい振る舞いを示しません。しかし、設定された時間が経過した途端に悪意のあるコードが実行され、様々な処理を行えるようになりますが、その中にランサムウェアなどを感染させる手順が含まれていたりもするのです。こちらの記事では、遅延型のアクティベーションを使用してランサムウェアを仕掛けるアプリについて説明しているものの、今も多くの検出スキームは、マルウェアがすぐにその特性を示すことを前提としているのが現状といえます。

マルウェアの作成者が、検出を回避するための追加策として使用する手法の1つが、コードの難読化です。基本的にこの手法では、実際の目的を隠すため、悪意のあるコードはゴチャゴチャに詰め込まれています。そして、コードを実行せずに動作するセキュリティツールが使用する静的分析の検閲形式から身を「守る」ため、様々な検出逃れのテクニックが使われるのです。

しかも、それだけではありません。

信頼できるアプリを装う手口は、銀行の口座情報を窃取して不正送金を行う「バンキング型トロイの木馬」のように極めて不正なアプリで採用されており、Google Play ストアを常に悩ませています。有名な事例として、こちらのマルウェアは偽のワッツアップ・メッセンジャーであり、100万~500万回もダウンロードされました。このなりすましアプリでは、実際のアプリのURLに類似した開発者URLを使用して、本物と偽の両方のアプリが同時にストア内に存在できるようにしてあり、ユーザーは、その違いに気付かなかったのです。さらに、この偽アプリはインストール後もデバイス上に居座り続けられるように、目立たないアイコンを作成していました。この偽アプリの収益化は、広告の表示によって行われていたと報告されていますが、より大きなファイルやデータを配信するように切り替えることもできたようです。さらに興味深いのは、この詐欺アプリに信憑性のある評価と多くのレビューが付けられていたことでした。

デバイス上に居座り続けるために、多くの場合、不正なアプリは上位のアクセス権限である「ルートアクセス」を探し、あらゆる操作が可能な、ある種の「スーパーユーザー」になろうとします。その方法は、どのようなものでしょうか。かなり単純なやり方としては、アプリがユーザーが許可するまでリクエストを繰り返す方法があり、より高度な手法としては、アンドロイド向けのルートアクセス悪用キットを使用して、必要な権限を手に入れることもあります。ルートアクセスを得ることで、攻撃者はデータストレージへの侵入や、通信の傍受などが可能となり、そのデバイスは、攻撃者の指令センターの管理下にある新たなボットに変わるのです。

利用されるのはワッツアップだけではありません。最近では、他の大手ブランドも悪意のあるアプリのなりすまし被害を受けました。

たとえば、シマンテックからは、Uberの偽アプリについて報告がありました。この事例では、ソーシャルエンジニアリングとフィッシングの手法が悪用されるとともに、疑われないように徹底して練られたトリックが用いられたという点で、特に興味深いものです。既知のアンドロイドのマルウェアである「フェイクアップ」の新種である「スプーフ-Uber」は、偽のUberアプリ画面のオーバーレイを定期的に表示して、ユーザーに個人情報の入力を求めることにより、Uberのログイン資格情報を提供するよう仕向けていました。ユーザーが情報を入力すると、その情報が攻撃者のサーバーに送信されると同時に、フェイクアップによって本物のUberアプリが開かれ、本物のアプリでの通常の動作と同様に、ユーザーの現在地が表示されます。こす悪意のあるアプリは、本物のUberアプリの特定の画面を開くディープリンクを呼び出すことで、このような処理を実現しました。

Fake Uber app overlay login|StopAd

偽のUberログインページのオーバーレイ(出典:シマンテック)

Fake Uber app deep linking to real apps interface|StopAd blog

偽のUberアプリは、偽のログイン画面からユーザーの資格情報を入手すると、本物のアプリのインターフェースへとディープリンクする(出典:シマンテック)

Google Play ストアで遭遇する可能性のある主な脅威

ここまで、敵対者がGoogle Play ストアやモバイルデバイスに侵入する際に使う手法の概要をお話ししました。ここからは、最もよく見られる各種の脅威をより詳しく見ていきましょう。

SMS型トロイの木馬

このマルウェアはメッセージング機能を乗っ取り、ユーザーの費用負担によって、密かにショートコードメッセージを特別な電話番号宛に送信して、その口座に資金を流すというものです。配布方法としては、詐欺師の手が加えられた一見正常なアプリとともに配布されるケースや、不用心なユーザーが疑わしいソースからインストールしてしまうケースが考えられます。多くの場合、SMS型トロイの木馬は、それらの特別な番号からの「登録」の確認をブロックしてユーザーに気づかれないよう細工し、感染したデバイス上に潜伏します。2017年のエクスペンシブウォール・マルウェアは、このようなトロイの木馬のわかりやすい例でした。

バンキング型トロイの木馬

この種のマルウェアは、Google Play ストアにかなり頻繁に侵入しています。その目的は、被害者のモバイルデバイスに侵入して、財務上の機密データを傍受し、収集することです。フィッシング攻撃はこの種の脅威の入り口となることが多く、SMS、インスタントメッセージング、eメール、そしてもちろんGoogle Play ストアやサードパーティのアンドロイド・ストアなど、さまざまな経路からの攻撃が確認されてきました。

トロイの木馬化されたアプリは、ユーザーや、バンキングサイトに入力されたログデータ、あるいは侵害されたデバイス上で開始されたアプリを密かに監視し、先のUberの事例と同様に、電子メールやペイパルなどの正当なサービスのログインフォームをまねたポップアップを生成します。その結果、ハッカーは、被害者の財産や、PII、つまり社会保障番号や居住地の住所などの個人情報を入手できるというわけです。さらには、システムから連絡先やネットワーク接続の使用許可を得て、他のデバイスへと感染を拡大させたり、バンクボットというトロイの木馬の事例のように、別のファイルやデータをダウンロードしたりする可能性もあります。バンクボットでは、正当なバンキングアプリのオーバーレイを使って資格情報が盗まれ、160件もの正当なバンキングアプリが標的になりました。

偽アプリ

このカテゴリーの不正アプリは、セキュリティ製品を装うことが一般的です。他のカテゴリのアプリと同様に「収益化」の方法はさまざまで、アドウェアを使って迷惑広告から収入を得る方法から、モジュール型のマルウェアを使って各種のファイルを送信し、デバイスの特性に合わせて機能を変更する方法まで多岐にわたります。
セキュリティサービス企業のソフォス・セキュリティは、Google Play ストア上の偽のウイルス対策プログラムである「スーパー・アンチウィルス2018」の事例について説明しています。これは、偽のスキャン結果を示す500個の不正アプリリストを含む.XMLファイル以外には、検出ツールを一切搭載していません。しかも、そのアプリリスト内の多くのアプリが正当な製品なのです。この製品は1万~5万回ダウンロードされましたが、立派なアプリ名はおとりにすぎず、その真の目的は、スキャン中に表示される広告によって、もう1つの偽のセキュリティ兼パフォーマンス改善アプリである「セキュリティ・エリート」を宣伝することにありました。ご存じのとおり、これまで聞いたこともないウイルス対策製品の名前に「スーパー」のような形容詞が含まれていて、「不要データのクリーンアップ」機能を売りにしている場合には、たいてい怪しげなことが起こります。そして、宣伝されたアプリのインストールは、3カ月間でなんと5,000万回に上ったのです。

クリプトマイニング・マルウェア

さて、正規のベンダーとダークウェブを構成するハッカーの双方で、仮想通貨の価値が高まり、決済方法として普及しつつあることは、ご存知のことと思います。そんな状況の中で広まってきている偽アプリが、クリプトマイニング・マルウェアです。一見すると、このカテゴリーのアプリは無害であり、無償で提供されることが多いのですが、その真の目的は、マルウェアの作成者自身が仮想通貨のマイニングを行う上で極めて重要な、大量のコンピューティングリソースを乗っ取ることにあります。ここで、ソフォス・セキュリティの研究者であるパンカージ・コーリ氏が、実行時にモネロや他の仮想通貨のマイニングを可能にするジャバスクリプトのコードによって拡張された、19個の仮想通貨マイニングプログラムについて説明していますが、そのすべてがGoogle Play ストアで見つかったものです。中でも高度なバリエーションのいくつかは、過熱やバッテリーの放電など、マイニングによって生じるCPU負荷の顕著な副作用を、クロックの周波数を調整するCPUスロットリングのようなテクニックまで用いて防ごうとしていました。

あらゆるマルウェアに関するグーグルの対応

こうした現状に対し、グーグルが採用した対策の1つは、アプリのインストール前、またインストール後に再度、スキャンを実行する「グーグルプレイ・プロテクト」機能です。また同社は、Google Play ストアへの公開時に疑わしいアプリの検出を強化するために、マシンラーニングを取り入れたことも報告しています。グーグルプレイ・プロテクトは、正当なアプリに「プレイ・プロテクト」のバッジによる証明を付与し、2017年には悪意のあるアプリのインストールを前年比で50%削減することに成功しました。とはいえ、これまでに述べたようなマルウェアの被害による大きな影響を考えると、明らかにまだ改善の余地があります。

ウイルス対策を手掛けるさまざまな企業の研究者も、この目標に貢献しています。さらにグーグルは、善意のある専門家に悪意のあるベンダーやアプリケーションの検出を促すために「セキュリティ・リワード・プログラム」を開始しました。また、ストアのクリーンアップを推進するために、ユーザー向けの違反報告機能を追加するとともに、脅威に関する知識をユーザーに提供する新たな取り組みも始めています。

とはいえ、アップルのアプリストアと同等の厳しい規制や手間のかかる承認プロセスを開発者に対して課すには、グーグルはGoogle Play ストアのオープン性を高める取り組みを諦めなくてはならず、そのような動きに出るとは考えられません。

モバイルデバイスやデータを保護するためのヒント

これまで述べてきたような環境の中で、アンドロイドのユーザーは、自らの安全を自分の手で守る必要があります。そのためのヒントを、以下にまとめてみました。

  • マルウェア対策製品をインストールして、常に最新の状態を保つ。
  • アンドロイドデバイスに最新のパッチが適用されていることと、旧バージョンのアンドロイドが実行されていないことを確認する。それが最新バージョンのOSであっても、アンドロイド OSを採用しているベンダーの更新スケジュールは異なる場合があるため、更新の有無を定期的に確認すること。
  • 常にリスクを想定する。100%安全なアプリというものは存在しない。
  • 急いでものごとを進めず、アプリについてダウンロードする前にじっくりと検討する。パブリッシャーのサイトや評価、レビューなどをチェックすること。
  • ワッツアップになりすました偽のアプリのことを思い出し、有名アプリをインストールする際には、より一層注意する。
  • インストール時には「アクセス許可の詳細」でアプリのアクセス許可を確認する。アプリの目的に対し、必要とされるアクセス許可が多すぎる場合には注意すること。たとえば、壁紙アプリにユーザーのSMS、電話番号、アドレス帳、ネットワーク接続へのアクセスが必要な場合は、広告のターゲティングやより有害な目的でそのアクセスを利用しようとしている可能性がある。また、更新時にどのアクセス許可が追加で必要とされるかを確認すること。そのようなアプリは、インストール後に上位の権限を入手しようとするかもしれない。特に、更新要求を拒否しても繰り返し更新を求められる場合には、注意が必要。

Fake Adobe Flash app Play store|StopAd blog

スプーフ・フラッシュというアドビ フラッシュのプレーヤーアプリは、必要以上に多くの情報を要求してきます。アンドロイドでは「これには料金が発生する可能性があります」という通知が表示されるので、それも警戒すべき点です。

  • デスクトップでのフィッシングの場合と同様に、SMSやインスタントメッセージングで受け取ったリンクをクリックしないようにする。特に、送信者が不明な場合や、メッセージでリンクをクリックするように求められた場合は、決してクリックしてはいけない。明らかに詐欺である。
  • ストアやベンダーについて絶対の確信がない限りは、Google Play ストア外のアプリや、サードパーティストアのアプリをダウンロードしないようにする。モバイルのウイルス対策を常に有効にしておく必要がある。

この記事の初出はストップアド・ブログに掲載されたものです。

この記事はBusiness2Community向けにGeroge Paliyが執筆し、NewsCredパブリッシャーネットワークを通じてライセンスされたものです。ライセンスに関するお問い合わせはlegal@newscred.comにお願い致します。