不正アプリは公式ストアからすべて削除されるまでに大変多くのユーザーによってインストールされてしまっている。ペイロードに潜んでユーザーのデバイスをのっとり勝手にダウンロード/インストールをおこなうなど、巧妙に活動をおこなうアプリの実態と予防策について解説をする。
マルウェアを用いて攻撃をたくらむ者は、常にAndroidユーザーの警戒心をチェックしている。彼らはバンキングトロージャンを通常のアプリに偽装させ、Androidの公式アプリストアであるGoogle Playに登録するという手口を使っているのだ。2018年8月から10月初めまでにGoogle Playで発見されたもののうち、ステルス性の高かった29種類についての分析では、ブースター、デバイスクリーナー、バッテリーマネージャーにとどまらず、星占いをテーマとしたアプリにまで偽装していたことが判明している。
近年増殖している正規の金融機関になりすまし、偽のログイン画面を表示するだけの不正アプリと異なり、これらのアプリはより高度で複雑な機能を有している。そして、ユーザーが不正動作に気づきにくいなど、ステルス性も高いモバイルバンキングマルウェアとして分類されている。
このようなリモートで制御されるバンキングトロージャンは、ターゲットとされたユーザーのデバイスにあるすべてのアプリを標的にすることが可能だ。しかも、ターゲットに合わせ動的に内容をアレンジしたフィッシング詐欺を仕掛けることができるのだ。さらに、二段階認証のために送付されたテキストメッセージを傍受/リダイレクトし、記載されたログインコードを利用してログインすることすらできてしまう。他にも、感染したデバイスに対し他のアプリを勝手にダウンロード/インストールすることもできる。これらの不正アプリは、Google Playへアップロードされる際には、別のデベロッパー名や外見(アイコンなど)が使われていた。しかし、いずれのアプリもコードに類似性があることや、同一のC&C(コマンド&コントロール)サーバーと情報が共有されていることから、単一の攻撃者またはグループが作成したアプリであることが明らかになった。
図1 – Google Playで発見されたバンキングトロージャンの例
今回の分析対象となった不正アプリ29種類は、ESETの研究者たちがGoogleに通知した後、公式のAndroidアプリストアからはすべて削除された。しかしながら、このようなアプリはアプリストアから削除される前に、すでに合計3万人近くのユーザーにインストールされてしまっている。
異常に気づかないほど巧妙な不正アプリの挙動とは
これらのアプリを起動すると、「被害者のデバイスと互換性がないためにアプリが削除された」とのエラーメッセージが表示され、アプリは自身の存在をユーザーの目の届かないところに隠ぺいしようと目論む。もしくは、もともと偽装の際に提示していた星占いなどの機能をアプリとして果たすことで、あたかも正常なアプリであるように振る舞うのだ。
図2 – 起動後、バンキングトロージャンによって表示された偽エラーメッセージ
これらのアプリはいずれのものも、不正を働く主な機能は各アプリのデータ保管領域内の暗号化されたペイロード*1の中に隠れている。そして、このペイロードは、「base64*2」でエンコードされ、ハードコードされたキーを使用し、「RC4」と呼ばれる暗号アルゴリズムで暗号化されている。マルウェアは活動の第一段階として最初に、「ドロッパー」と呼ばれるプログラムでエミュレーターやサンドボックスの存在をチェックする。このチェックに失敗すると、ローダーや実際のバンキングマルウェアを含むペイロードを解読し、ドロップする。今回、分析をおこなったアプリには、このような暗号化されたペイロードがいくつかの段階に分かれているものもあった。
- ※ 1アプリの場合、ヘッダやトレーラなどの識別情報をのぞく、データ保管領域内に保存されているデータそのもののこと。
- ※ 2データのエンコード方式の一つで、64種類の英数字に限定して通信を行う。
図3 – エミュレーターのチェック
これらのペイロードは、ターゲットとなったユーザーのデバイスにインストールされたバンキングアプリになりすまし、SMSメッセージの傍受/送信をおこなえるようになる。また、別のアプリをダウンロード/インストールさせることができるのだ。そして最たる特徴は、このマルウェアが感染したデバイスにインストールされたアプリに偽装できることである。マルウェアはデバイスにインストールされているアプリのHTMLコードを取得・利用して、正規のアプリ上に偽のフォームを表示させてしまう。このような挙動のため、ほとんどの場合においてターゲットとなったユーザーはアプリに異常が起きていることにまったく気づくことすらできないのだ。
バンキングトロージャンの被害から逃れるために
幸いなことに、このような特定のバンキングトロージャン(全リストは文末の不正アプリの痕跡(IoC/Indicator of Compromise)の項を参照してほしい)には、高度な技術が使用されていないため、感染したデバイスに永久にとどまることはできない。そのため、このようなアプリをインストールしたかもしれないと思ったら、「設定」> 「一般」 > 「アプリケーションマネージャー」/「アプリ」の手順でアンインストールするとよいだろう。
また、銀行口座に疑わしい取引履歴がないかどうか確認し、インターネットバンキングのパスワード/PINコードの変更も必ずしておきたい。
バンキングマルウェアに感染しないために、以下4つの点を対策として心がけてほしい。
- 1)基本的にGoogle Playのみからアプリをダウンロードすること。
しかし、必ずしも不正アプリではないということには注意が必要だ。しかし、今回紹介したような不正アプリはサードパーティーのアプリストアにかなり多くアップロードされており、一度公開されてしまうとGoogle Playのように削除されることはほとんどない。 - 2)Google Playからアプリをダウンロードする場合、ダウンロード数、アプリの評価やレビューの内容に注意を払うこと。
- 3)インストールするアプリにどのような権限を許可するかよく考えること。
- 4)Androidデバイスを常に最新の状態に保ち、信頼できるモバイルセキュリティソリューションを利用すること。
ESETの製品ならば、「Android/TrojanDropper.Agent.CIQ」という名称のウィルスを検出し、ブロックすることが可能だ。
このような悪意のあるアプリをご紹介いただいたニコラス・クリサイドス (Nikolaos Chrysaidos) 氏には心から感謝を申し上げたい。
App name | Package name | Hash | Installs |
---|---|---|---|
Power Manager | com.puredevlab.powermanager | 7C13ADEFC2CABD85AD8F486C3CBDB6379811A097 | 10+ |
Astro Plus | com.astro.plus | 24D2ED751A33BD965A01FA87D7A187D14D0B0849 | 0+ |
Master Cleaner - CPU Booster | bnb.massclean.boost | 101DA4333A26BC6D9DFEF6605E5D8D10206C0EB4 | 5,000+ |
Master Clean - Power Booster | mc.boostpower.lf | E5DC8D4664167D61E5B4D83597965253A8B4CB3B | 100+ |
Super Boost Cleaner | cpu.cleanpti.clo | 33D59A70363857A0CE6857D201B764EF3E8194DD | 500+ |
Super Fast Cleaner | super.dupclean.com | E125AC53050CAFA5A930B210C8168EA9ED0FD6F1 | 500+ |
Daily Horoscope For All Zodiac Signs | ui.astrohoro.t2018 | C3C45A7B3D3D2CB73A40C25BD4E83C9DA14F2DEA | 100 + |
Daily Horoscope Free - Horoscope Compatibility | com.horochart.uk | CD5817AB3C2E4AE6A18F239BDD51E0CC9D7F6E25 | 500+ |
Phone Booster - Clean Master | ghl.phoneboost.com | 9834B40401D76473D496E73884947D8A9F1920B3 | 1,000+ |
Speed Cleaner - CPU Cooler | speeeed.cool.fh | 7626646C5C6D2C94B9D541BD5A0F320421903277 | 100+ |
Ultra Phone Booster | ult.boostphone.pb | 6156081484663085B4FC5DEAEBF7DA079DD655C3 | 1,000+ |
Free Daily Horoscope 2019 | fr.dayy.horos | 4E7F12F07D052E7D1EFD21CD323D8BAD9A79933B | 50+ |
Free Daily Horoscope Plus - Astrology Online | com.dailyhoroscope.free | c0be22c44e5540322e0ffbf3a6fe18ce0968d3b5 | 1,000+ |
Phone Power Booster | pwr.boost.pro | FCB8E568145AF2B6D8D29C0484417E51DD25717F | 1,000+ |
Ultra Cleaner - Power Boost | ua.cleanpower.boost | CB37C8C44750874BA61F6F95E7A7C29073CB51DC | 50+ |
Master Cleaner - CPU Booster | bnm.massclean.boost | 63E1C18D87F41ABF9956FC035D29D3C2890453EE | 5,000+ |
Daily Horoscope - Astrological Forecast | gmd.horobest.ty | 90f41c64b3ab3f3b43e9d14b52f13143afb643da | 1,000+ |
Speed Cleaner – CPU Cooler | speeeed.cool.gh | 56be07b21c9992a45c3b44b2e8a26b928e8238e2 | 0+ |
Horoscope 2018 | com.horo2018i.up | c8dc0e94f38556cd83ca6a693fa5b6d7ae3957f7 | 1,000+ |
Meu Horóscopo | my.horoscop.br | 92808ca526f8e655d8fa8716ab476be4041cd505 | 1,000+ |
Master Clean - Power Booster | mc.boostpower.cf | ab88a93b0e919e5e07cf867f4165f78aa77dc403 | 50+ |
Boost Your Phone | boost.your.phone | 5577c9131f026d549a38e3ce48c04a323475927e | 1,000+ |
Phone Cleaner - Booster, Optimizer | phone.boost.glh | 988AB351549FEB2C1C664A29B021E98E3695A18A | 1,000+ |
Clean Master Pro Booster 2018 | pro.cleanermaster.iz | b9d32241d169dfd4ca5674dffa357796b200bc2f | 10+ |
Clean Master - Booster Pro | bl.masterbooster.pro | bcb9ef41fea8878eb10f4189dd55bfe1d03a64b3 | 5,000+ |
BoostFX. Android cleaner | fx.acleaner.e2018 | 99bff493d201d42534eec9996fd0819a | 50+ |
Daily Horoscope | day.horocom.ww | 971a0cf208f99c259966b20aa10380c1 | 1,000+ |
Daily Horoscope | com.dayhoroscope.en | 25e95b32832a491108835b382c4f14aa | 1,000+ |
Personal Horoscope | horo.glue.zodnow | 0dcaf426bbc3b484aa4004f5c8e48a19 | 1,000+ |