11月9日、カナダのソフトウェアアドオンを開発しているメーカー、Analytics Edgeがこのような見出しの記事を公開した――「Here’s a secret: ɢoogle.com is not google.com」。
アメリカ合衆国で実施された大統領選挙の前後で、「Vote for Trump」というフレーズが多くのサイトのGoogleアナリティクスの検索レポートに表示されたという。アクセス解析を見ると、「secret.ɢoogle.com」というドメインから。
これだけ見ると、大統領選に関して、グーグルの何らかのサービスで検索したのだろう……と思ってしまうかもしれない。しかしよく考えてほしい。なぜ「G」だけ大文字なのだろうか? そう、「secret.google.com」ではなく、「secret.ɢoogle.com」なのは、考えてみると妙ではないか。
この「G」がクセモノ。実はラテン文字のタイポグラフィにおいて用いられる、小文字と同じ高さで作られた大文字「スモールキャピタル」のGなのだ。
かつて、インターネットのドメイン名として許されていたのは英数字と「-」(ハイフン)のみであった。しかし、インターネットが世界に広まっていく中で、文化的、社会的背景などから、英数字以外の文字を使いたいという要求が強くなってきた。
そこで考え出されたのが、漢字やアラビア文字といったような英数字以外の文字を使ってドメイン名を記述できる「国際化ドメイン名」(IDN:Internationalized Domain Name)という技術だ。
「ɢoogle.com」はこの技術を悪用し、“G”だけをスモールキャピタルにして、さもグーグルの公式であるかのようになりすましているというわけ。
アナリティクスレポートに迷惑なトラフィックを残し、それを見たウェブサイトの所有者や管理者がどこから来たのかを調査し、さらにはスパムの被害に遭わせることもできる。Googleアナリティクスは、スパムサイトへ誘導させたい人の重要なターゲットになっているのだ。
なお、Analytics Edgeによれば、コンピューターに損害を与える恐れがあるため、ɢoogle.comにはアクセスしないことを推奨している。
この事件から得られる教訓はなんだろうか。それは「安易に公式だと安心しないこと」だろう。たとえばAndroidのスマホ/タブレットを利用するなら、非公式なアプリストアを利用しないというのはもちろん大事だ。しかしその上で、「本当に公式なのか?」「グーグルのサービスなのか?」と、ユーザーが用心する姿勢も求められている。
McAfee Blogの「Google Playストアで発見された難読化されたマルウェア」を読んでほしい。こちらは「Google Playストアにマルウェアがあった」というパターン。マルウェアの被害に遭わないよう、どの点に気をつければいいのかを紹介している。
Google Playストアで発見された難読化されたマルウェア
先週の初めに McAfee Labs のモバイルマルウェアリサーチチームは、‘Minecraft’ というゲームの拡張プログラムとしてGoogle Playストアで配布されていたマルウェアを発見しました。このマルウェアは、‘ValerySoftware’ という開発者によって作成され、高度な難読化が施されていました。
Google Playストア上の統計情報によると、これらのアプリケーションはそれぞれ500回程度インストールされており、おおよそ3,000の端末がこのマルウェアに感染したと考えられます。
このマルウェアの特徴としては:
- 複数の暗号化・難読化が施されている
- 外部サーバーからAPKファイルをダウンロードする
- Google Playストアから他アプリのインストールを試みる
- 広告を表示する、または、広告にアクセスする
- ユーザ情報や端末情報を収集する
- 外部コマンドによりアプリの起動・終了を行う
- 外部コマンドによりアプリのインストール・アンインストールコマンドを行う
ストア上の否定的なユーザーコメントからもこれらのアプリが有益な機能を提供していないことがわかりますが、このマルウェアの場合、ユーザーに見える動作としては、(アンインストールを妨害する目的で)デバイス管理者権限を要求した後、WebView機能でいくつかのHTMLコンテンツを表示するだけというものでした。
その一方で、このマルウェアはバックグラウンドで、複数の暗号化されたファイルを復号して動的に読み込み、ユーザに気づかれることなく悪意ある活動を開始します。
上記のフロー図で示しているように、このマルウェアは悪質な動作を隠蔽するために、いくつもの暗号化や難読化を施しています。ELF形式の実行ファイルを使い、APKファイル内のassetsフォルダにある暗号化されたファイル “asset.dat” から、悪質なコードを抽出するようにすることで、静的解析を難しくしています。また、マルウェアの動作に関連したファイルやクラスについてもファイル名や文字列をランダムなものとすることで、アンチウイルス製品による検知を回避しようとしています。
たとえば、コントロールサーバーのURLが記載されたJSON形式のファイルは、難読化された状態で、暗号化されたDEXファイル内に格納されています。
解読したJSON形式のファイルに記載されているドメインについて調査を行ったところ、これらのドメイン名はヨーロッパのあるサイバー犯罪集団と関係があることが判明しています。
また、このマルウェア作者は、アンチエミュレーター技術を使うことで、動的解析環境での振る舞い検知を回避していました。
さらには、また、このマルウェアの作者は、広告収入を得る目的で、“Robo Templates” というフレームワークを使い多数の広告ライブラリーを組み込んでいます。広告表示に使用するリソース (画像、JavaScript、HTML) もまたBASE64形式でエンコードされた状態で、DEXファイルにコードとして埋め込まれています。そのため、これらのリソースファイルは暗号化されたDEXファイル (classes3.dex) を復号して解析しないと発見することができません。
このマルウェアには、指定されたURLからAPKファイルをダウンロードする機能も組み込まれています。下記スクリーンショットにおける赤枠で囲まれたクラスもまた、マルウェアによって挿入された悪質なコードとなります。
Google社ではマルウェアに対する取締りを強化していますが、今回発見された脅威のように、依然として公式ストアでもマルウェアは発見され続けています。アプリをインストールする前に他のユーザーのレビューコメントを見る、アプリケーションが要求するパーミッションの妥当性を確認する、さらには、同じ開発者によって作成された他のアプリを確認することで、そのアプリの有用性や開発者の信頼性を判断することができます。もし、インストールするアプリに少しでも不審な点があればインストールしないようにしてください。
McAfee Mobile Security はこのAndroidに対する脅威をAndroid/Agent.FL として検出します。
この連載の記事
-
第20回
デジタル
「ファイルを返してほしければ、他人を感染させろ」と言われたでござる -
第19回
デジタル
2017年、サイバー犯罪で泣かないために知っておきたいこと -
第18回
デジタル
「偽ポケモンGO」、アノニマスの日本攻撃……2016年セキュリティ10大事件 -
第17回
デジタル
DDoS攻撃でビルの暖房が使えなくなり凍死寸前!? -
第16回
デジタル
あなたのAndroid、やっかいなものに“感染”していないか? -
第15回
デジタル
2017年、「いいね!」は金で買われ、ドローンは乗っ取られる(かも) -
第13回
デジタル
「至急ご確認ください!」まあスパムメールなんですけどね -
第12回
デジタル
金融庁、サイバー攻撃の対策訓練! でも俺らに関係あるの?←あります -
第11回
デジタル
Apple Payは便利、それでもセキュリティー意識は肝心 -
第11回
デジタル
グーグル「自撮りお願いしまーす」←実はマルウェアだった! - この連載の一覧へ