Zscalerのブログ
Zscalerの最新ブログ情報を受信
購読するGoogle Playストアに潜むJoker、Facestealer、Coper
Google Playストアは通常、ユーザーがAndroidアプリを見つけてインストールする最も安全なアプリの提供元の1つと見なされています。ただし、脅威アクターはその手口を進化させ続けており、 マルウェア が混じっている危険なアプリのGooglePlayストアへの正常なアップロードに成功しています。
最近、Zscaler ThreatLabzチームは、仮想市場にまん延しているJoker、Facestealer、およびCoperマルウェア ファミリーの複数のインスタンスに関係するアプリを発見しました。ThreatLabzチームは、直ちに新たに発見したこれらの脅威をGoogle Android セキュリティチームに通知し、後者は悪意のあるアプリをGoogle Playストアから即座に削除しました。
以下は、Google Playストアで最近発見されたこれら3種のマルウェア ファミリー ペイロードのテクニカル分析です。
Jokerマルウェア
Jokerは、Androidデバイスを標的とする最も名高いマルウェア ファミリーの1種です。この特定のマルウェアは一般に認識されているにもにもかかわらず、コード、実行方法、ペイロード取得技術の更新など、マルウェアのトレース署名を定期的に変更することにより、Googleの公式アプリストアへの侵入を続けています。Jokerは、SMSメッセージ、連絡先リスト、デバイス情報を窃取し、被害者をプレミアムなワイヤレス アプリケーション プロトコル(WAP) サービスに登録するように設計されています。過去2か月間、ThreatLabzの研究者は、Google Playストアで次の悪意のあるJokerダウンローダー アプリを発見しました:
Simple Note Scanner - com.wuwan.pdfscan | |
Universal PDF Scanner - com.unpdf.scan.read.docscanuniver | |
Private Messenger - com.recollect.linkus | |
Premium SMS - com.premium.put.trustsms | |
Smart Messages - com.toukyoursms.timemessages | |
Text Emoji SMS - messenger.itext.emoji.mesenger | |
Blood Pressure Checker - com.bloodpressurechecker.tangjiang | |
Funny Keyboard - com.soundly.galaxykeyboard | |
Memory Silent Camera - com.silentmenory.timcamera | |
Custom Themed Keyboard - com.custom.keyboardthemes.galaxiy | |
Light Messages - com.lilysmspro.lighting | |
Themes Photo Keyboard - com.themes.bgphotokeyboard | |
Send SMS - exazth.message.send.text.sms | |
Themes Chat Messenger - com.relish.messengers | |
Instant Messenger - com.sbdlsms.crazymessager.mmsrec | |
Cool Keyboard - com.colate.gthemekeyboard | |
Fonts Emoji Keyboard - com.zemoji.fontskeyboard | |
Mini PDF Scanner - com.mnscan.minipdf | |
Smart SMS Messages - com.sms.mms.message.ffei.free | |
Creative Emoji Keyboard - com.whiteemojis.creativekeyboard.ledsloard | |
Fancy SMS - con.sms.fancy | |
Fonts Emoji Keyboard - com.symbol.fonts.emojikeyboards | |
Personal Message - com.crown.personalmessage | |
Funny Emoji Message - com.funie.messagremo | |
Magic Photo Editor - com.amagiczy.photo.editor | |
Professional Messages - com.adore.attached.message | |
All Photo Translator - myphotocom.allfasttranslate.transationtranslator | |
Chat SMS - com.maskteslary.messages | |
Smile Emoji - com.balapp.smilewall.emoji | |
Wow Translator - com.imgtop.camtranslator | |
All Language Translate - com.exclusivez.alltranslate | |
Cool Messages - com.learningz.app.cool.messages | |
Blood Pressure Diary - bloodhold.nypressure.mainheart.ratemy.mo.depulse.app.tracker.diary | |
Chat Text SMS - com.echatsms.messageos | |
Hi Text SMS - ismos.mmsyes.message.texthitext.bobpsms | |
Emoji Theme Keyboard - com.gobacktheme.lovelyemojikeyboard | |
iMessager - start.me.messager | |
Text SMS - com.ptx.textsms | |
Camera Translator - com.haixgoback.outsidetext.languagecameratransla | |
Come Messages - com.itextsms.messagecoming | |
Painting Photo Editor - com.painting.pointeditor.photo | |
Rich Theme Message - com.getmanytimes.richsmsthememessenge | |
Quick Talk Message - mesages.qtsms.messenger | |
Advanced SMS - com.fromamsms.atadvancedmmsopp | |
Professional Messenger - com.akl.smspro.messenger | |
Classic Game Messenger - com.classcolor.formessenger.sic | |
Style Message - com.istyle.messagesty | |
Private Game Messages - com.message.game.india | |
Timestamp Camera - allready.taken.photobeauty.camera.timestamp | |
Social Message - com.colorsocial.message |
ThreatLabzは、これまでにGoggle Playストアで50種を超えるユニークなJokerダウンローダー アプリを発見しています。これらのアプリはすべて、合計で30万回以上ダウンロードされ、通常、次の一般的なカテゴリのいずれかに分類されます:
- コミュニケーション
- 健康
- パーソナライゼーション
- 写真
- ツール
以下は、カテゴリごとのアプリ数の内訳です:
Jokerに感染したアプリの過半数を占める最も標的として狙われていたカテゴリーはツールおよび通信アプリです。ThreatLabzは、Jokerマルウェアが混ぜ込まれたアプリが毎日アップロードされていることを発見しました。これは攻撃者集団の高い活動レベルと執拗性を示すものです。Jokerマルウェアのキャンペーンに属するThreatLabzの最新の発見は、以前の発見と一致して、類似した開発者の命名パターンに従い、使い慣れた手法を使用しています。この特定のキャンペーンのより詳細な分析については、当社の以前のブログ Google Play のJoker Jokingをご覧ください。
以下は、Enjoy Message Joker アプリのテクニカル分析です:
- アプリ名: Enjoy Message
- パッケージ名: sms.ienjoy.joysms.message
Joker マルウェアの作成者は、非常に複雑なものから信じられないほど単純なものまで、さまざまなアプリを開発してリリースしています。Jokerの開発者は、アプリが所定のインストール数とレビューを獲得するのを待ってからマルウェアが混ぜ込まれたバージョンと入れ替える代わりに、市販のパッカーを使用して、悪意のあるペイロードを共通のアセット ファイルとアプリケーション パッケージに隠す手口を採用し始めました。このことが、これらの悪意のあるアプリがウイルス対策ソフトウェアやGoogle Playストアによる評価中に多くの場合検出されない主な理由の1つです。
最も一般的に見られるのは、ユーザーが自身の電話でデフォルトのSMSアプリとして機能できるようにアクセス許可を昇格する必要があるメッセージング アプリケーションにJokerマルウェアを偽装する攻撃です。このマルウェアは、これらの昇格された権限を使用して操作を実行します。
Enjoy SMS アプリケーションでは、ペイロードは既知のパスに隠されていますが、パス自体はアプリケーションのクラスで難読化されています。
図1: ペイロードの難読化されたパス
難読化を解除すると、ペイロードが存在するアセットのディレクトリ「io/michaelrocks/libphonenumber/android/data/PhoneNumberAlternateFormatsProto_53」にパスが表示されます。
アプリケーションのパッケージ名は、AES 復号鍵として使用されるハッシュを導出するために使用されます。この鍵は、以下の宣言された関数を含む必要がある実行可能ファイル(.so)を使用してペイロードを復号化するために使用されます。
図2: 類似した既知のSDKの関数/クラス名
調査を難しくするため、使用される関数のクラス名とメソッド名は既知の SDK に類似しています。
非表示のドロップされた実行可能ファイルの 「onInstall」関数は、「system.loadlibrary」機能によって実行可能ファイルをロードした後、実行時に呼び出されます。
図3: 実行可能ファイル内への悪意のあるコードの実装
上に示すように、実行可能ファイルは「com.Brling」クラスからメソッド「Wnjre」を読み込みます。ドロップされた実行可能ファイルは、Base64 暗号化を使用してペイロードを非表示にします。
図 4: Base64で暗号化された内容
2 番目のペイロードは、以下に示すように、既知の兵器化された Java ARchive (JAR) ファイルを3 番目のペイロードとしてダウンロードします。
図 5: 復号化されたペイロード
以下は、Joker マルウェアで使用される一般的な手法の例です:
1.アプリは、そのパッケージがまだGooglePlayストアで公開されているかどうかを確認します。
図6: Google Playストアをチェックして、アプリがまだ公開中であることを確認します。
2. 多くのJokerアプリは、Androidパッケージ キット(APK)のアセット フォルダにペイロードを隠し、x86アーキテクチャに基づくほとんどのサンドボックスによる検出を回避するARM ABI実行可能ファイルを作成します。
3. Joker マルウェアは、偽の既知のアセット ファイルでも一般的に使用されるXOR、AES、DES、ElGamalなど、さまざまな種類の暗号化でペイロードを隠します。それらのいくつかは、JSON、TTF、PNG、またはデータベース ファイルのような拡張子を持っています。いくつかの例では、アプリは暗号化され、アプリ マニフェスト ファイルのメタデータ内の悪意のあるペイロードを非表示にします。より多くの場合、復号化鍵は、おそらく復号化ルーチンをカスタマイズする追加の作業を回避するために、アプリのパッケージ名から導出されます。
図 7: ElGama暗号化
図 8: パッケージ名からの DES 鍵の導出
IOC:
- http://givehotdog[.]com
- https://trustcats[.]com
- http://giveme8[.]com/
- https://xjuys[.]oss-accelerate[.]aliyuncs[.]com/xjuys
- http://139[.]177[.]180[.]78/hell
- https://xjuys[.]oss-accelerate[.]aliyuncs[.]com/fbhx1
- https://xjuys.oss-accelerate[.]aliyuncs[.]com/fbhx2
FaceStealerマルウェア
Facestealer マルウェアは、Google Play ストアでも発見され、偽の Facebook ログイン画面で Facebook ユーザーを標的にすることで知られています。デバイスが感染してしまうと、ユーザーはFacebookにログインするように促され、自身の資格情報を入力せずには同アプリを使用できません。ログインに成功すると、資格情報と認証トークンがマルウェア作成者によって窃取されます。
- アプリ名: cam.vanilla.snapp
- ダウンロード件数:5000
- カテゴリー:ツール
図9: 偽のFacebookログイン画面
上記の偽装ページは、アプリによって開かれ、WebViewを使用してサーバーからダウンロードしたJavaScriptを挿入します。
図 10: 悪意のある JavaScript をダウンロードするための URL
有効にすると、マルウェア アプリはコマンド&コントロール(C2)サーバーにアクセスして、悪意のあるJavaScriptをダウンロードします。URL https://busynow[.]store/config はまだ公開中であり、マルウェアの作成者は、最新のアップデートで、Base64でエンコードされた文字列の自動デコードに失敗するための文字を追加しました。以下のスクリーンショットでは、追加された "W" 文字によってデコードが失敗し、平文に戻ります。
図 11: 復号された Base64
以下のスクリーンショットに示すように、窃取された資格情報とトークンが、悪意のあるコードが読み込まれたJavaScriptを使ってC2サーバーに送信されます。
図12: Facebookの資格情報を窃取するリモートC2の「c_url」パラメータを示しています。
IOC:
- busynow[.]store
- Zs8668[.]com
- kcoffni[.]xyz
Coper マルウェア
Coperは、Google Playストアで正規のアプリを装って、ヨーロッパ、オーストラリア、南アメリカのバンキング アプリケーションを標的とする有名なトロイの木馬です。ダウンロードしてしまうと、このアプリは、SMSテキスト メッセージを傍受して送信できるCoperマルウェア感染を開放します。その上で、メッセージを送信するためにSSD(非構造化付加サービスデータ)リクエストの作成, キーロギング、デバイス画面のロック/ロック解除、オーバーレイ攻撃の実行、アンインストール不能にするなど、攻撃者がC2サーバーとのリモート接続を介して感染したデバイスで制御およびコマンドを実行できるようにしてしまいます。これらの活動の結果、最終的には、攻撃者は被害者からお金を窃取ために活用できる情報とアクセス権限を獲得します。
- アプリ名:Unicc QR Scanner
- パッケージ名: com.qrdscannerratedx
- Sha256: 02499a198a8be5e203b7929287115cc84d286fc6afdb1bc84f902e433a7961e4
図 13: Google Play ストアで Coper マルウェアに混ぜ込まれたUnicc QR Scannerアプリ
このアプリは、無料のQRスキャナーに偽装しています。インストールしてしまうと、このアプリはすぐにユーザーにアプリをアップデートするように促します。
図14: スクリーンショットは、ユーザーにアプリのアップグレードを依頼し、デバイス設定でアプリへの昇格されたアクセス権限をさらに付与するように促すことで、マルウェア感染を有効にするプロセスを示しています。
次に、脅威アクターは、マルウェアまたはバックドアをデバイスにインストールするように設計されたトロイの木馬ドロッパーを使用して、Google Firebaseアプリ開発者ツールで下のスクリーンショットに示す悪意のあるペイロードを配信するURLを呼び出して受信します。
図 15: Firebaseの呼び出し
マルウェアは、新しい悪意のあるペイロードをホストするURLを含む構成をダウンロードします。下のスクリーンショットに示すように、新しいペイロードの名前がAndroidのShared Preferencesファイルによって設定されます。インストールされているペイロードの名前も変更され続けます。
図 16: SharedPreferences
新しくインストールされたファイルは、パッケージ名「com.fromtoo2」を持つのデバイス上の偽のGooglePlayストア アプリであり、直ちに昇格されたアクセス権限を付与するようにユーザーに促し、それによってユーザーの電話を完全にコントロールします。
バックグラウンドでは、偽のGoogle Playストアアプリが libWeEq.soという実行可能ファイルをロードし、以下でさらに示して説明するように、事前定義されたMvsEujZ関数を呼び出します。
図 17: 実行可能ファイルから呼び出された MvsEujZ関数
上記の MvsEujZ 関数は、実行可能ファイルで見つかった静的鍵を使用して実行可能なファイルを復号し、起動時に昇格されたアクセス権限を付与するようにユーザーに促します。libWeEq.so で復号した後、下のスクリーンショットに示すように、Coperコード ベースが表示されます。
図 18: Coperコード ベース
この最後のペイロードは、Rivest Cipher 4 (RC4) 暗号化を使用して、その悪意のある署名を隠して検出されないようにします。以下のスクリーンショットは、Coper マルウェアで使用される復号された C2 サーバーアドレスを示しています。
図 19: スクリーンショットは、ペイロードの復号内容を示しています
リモートコントロールアクセス用のバーチャル ネットワーク コンピューティング(VNC)サービスが利用できない場合、マルウェアの作成者は、下のスクリーンショットに示すように、Android TeamViewerアプリを使用して、感染したデバイスの画面を監視します。
図20: スクリーンショットは、攻撃者がTeamViewerを使用してデバイスの画面をリモートで監視できるようにするコードを示しています
そして、この最後のスクリーンショットは、悪意のあるJavaScriptが読み込まれるWebViewのバックエンドを示しており、読み込まれることで、攻撃者がC2サーバー接続を介して完全なコントロールを手にいれ、被害者を侵害して最終的に恐喝するのに必要な行動を実行できるようにします。
図 21: Android開発者アプリ WebView を活用する攻撃者を示しています
IOC:
- raw[.]githubusercontent[.]com/k6062019/qq/main/porc[.]apk
- abashkinokabashkinok[.]top/ZmEwY2ZmZWYzN2Mw/
- asqwnbvb[.]shop/ZmEwY2ZmZWYzN2Mw/
- barabashkinok[.]top/ZmEwY2ZmZWYzN2Mw/
- ccnfddbvb[.]pics/ZmEwY2ZmZWYzN2Mw/
- eendfbvb[.]sbs/ZmEwY2ZmZWYzN2Mw/
- nbervbwe[.]monster/ZmEwY2ZmZWYzN2Mw/
- nbrtvbsd[.]mom/ZmEwY2ZmZWYzN2Mw/
- nbvb3954[.]fun/ZmEwY2ZmZWYzN2Mw/
- nbvbvber[.]makeup/ZmEwY2ZmZWYzN2Mw/
- nbvmnbbn[.]lol/ZmEwY2ZmZWYzN2Mw/
- nbvvvb[.]hair/ZmEwY2ZmZWYzN2Mw/
- nterospbnvdos[.]site/ZmEwY2ZmZWYzN2Mw/
- nterospusios[.]shop/ZmEwY2ZmZWYzN2Mw/
- ntospusios[.]top/ZmEwY2ZmZWYzN2Mw/
- nytbvb[.]one/ZmEwY2ZmZWYzN2Mw/
- qqnnffbvb[.]space/ZmEwY2ZmZWYzN2Mw/
- qwnnnbvb[.]skin/ZmEwY2ZmZWYzN2Mw/
- vbfdnbvb[.]online/ZmEwY2ZmZWYzN2Mw/
- vntososupplsos[.]live/ZmEwY2ZmZWYzN2Mw/
- wwereffnbvb[.]store/ZmEwY2ZmZWYzN2Mw/
- xxfdnbvb[.]quest/ZmEwY2ZmZWYzN2Mw/
これらのマルウェアによる感染を避けるためにAndroidユーザーができること:
不要で、信頼できない、よく調べられていないアプリをモバイル機器上にインストールしてはいけません。知っていて信頼できる情報源とプロバイダーに従います。非常に高いインストール件数と肯定的なレビュー数を持つアプリを探します。信頼できる提供元が推奨し、多くのインストール件数と肯定的なレビューを特徴とするアプリを探します。
完全に信頼できないアプリに通知リスナーの許可と昇格されたアクセス権限を付与してはいけません。通知リスナー サービスを使用すると、アプリのパッケージ名を enabled_notification_listeners プロバイダーに追加できます。これで読み取り通知が有効になり、これには自動生成されたワンタイムパスワード/PIN(OTP)などの重要なアクセス通知が含まれます。
可能であればメッセージング アプリのインストールを避けるか、細心の注意を払い、時間をかけて調査し、アプリがよく知られ、レビューされていることを確認します。信頼できる友人からメッセージング アプリのダウンロードをお願いするリンクが届いた場合でも、友人のデバイスがマルウェアによって侵害される可能性を考慮し、まず友人に確かめずに、自ら時間をかけて調査し、インストールする前にそのアプリが十分に安全であることを確認してください。メッセージング アプリは、その機能としてRead_SMS許可を必要としますが、脅威アクターはその許可を簡単に悪用して被害者をさらに侵害するのに利用できる主要なOTPなどの情報を取得できます。
Google Play ストアの悪意のあるアプリによる被害に遭った場合は、Google Play ストア アプリのサポート オプションから直ちにGoogleに通知します。マルウェアの拡散を制限し、脅威アクターの成功を阻止するために、悪意のあるアプリをできるだけ早く特定して、フラグを立て、推奨のアプリ ストアから削除するために協力することが重要です。
全社ネットワークの保護を担当している場合は、Zscaler のゼロトラスト アーキテクチャを展開してユーザーを保護し、悪意のあるアプリがユーザーによって個人のデバイスにダウンロードされた際のさらなる侵害を防ぎます。