マルウェア
東南アジアのAndroidユーザを標的にするマルウェア「TgToxic」の自動化されたフレームワーク
トレンドマイクロは、2022年7月以降、台湾、タイ、そしてインドネシアのAndroidモバイルユーザを標的としているマルウェアを検出し、その暗号化ファイル名から「TgToxic」と命名しました。本記事では、その攻撃を詳しく解説します。
トレンドマイクロは、2022年7月以降、台湾、タイ、そしてインドネシアのAndroidモバイルユーザを標的としているマルウェアを検出し、その暗号化ファイル名から「TgToxic」と命名しました。本記事では、その攻撃を詳しく解説します。このマルウェアは、銀行のアプリやファイナンスアプリ、そしてデジタルウォレットからユーザの認証情報や暗号資産等を盗み取ります。当マルウェアの自動化機能を解析したところ、攻撃者が正規のテストフレームワーク「Easyclick」を悪用し、Javascriptベースの自動化スクリプト(クリックやジェスチャ等の関数)を作成していることが判明しました。
トレンドマイクロは、2022年7月に始まった東南アジアのAndroidユーザを標的にした攻撃を解析しました。この攻撃は現在も観測されています。本攻撃は、複数の偽装アプリに埋め込まれたバンキングトロジャン(オンライン銀行詐欺ツール)「TgToxic」を介して、金融・銀行系のアプリから資産を窃取することを目的としています。窃取対象の資産には、暗号資産ウォレット、銀行のモバイルアプリの認証情報、預金等が含まれます。この脅威は、以前は台湾のユーザを標的にしていましたが、最近ではタイ及びインドネシアのユーザを標的にした詐欺及びフィッシング攻撃も行っています。心当たりのない差出人から送信された電子メール内のリンクを開く際には、慎重にご判断ください。また、第三者のプラットフォームからアプリをダウンロードすることは控えてください。
活動の変遷とネットワークインフラ
この脅威の展開や標的は流動的なため、トレンドマイクロは2022年の後半から監視を継続しています。本章では、攻撃について時系列順に簡潔に紹介します。そして、次章ではその詳細について解説します。
- 2022年7月:フィッシングリンクが埋め込まれた不正な投稿がFacebook上に出現。ソーシャルエンジニアリングを用いた手口で、台湾のソーシャルメディア上のユーザを標的とする。
- 2022年8月下旬 ~ 10月:台湾及びインドネシアのユーザを対象とするセクストーション(性的脅迫)が発生。被害者を登録するように誘導し認証情報を窃取。
- 2022年11月 ~ 2023年1月:タイのユーザを標的とするスミッシングリンクを確認。この期間に使用された一部のフィッシングサイトにより、攻撃者がインドネシアにおいて暗号資産詐欺等の活動を拡大していることが判明。
初期の活動:フェイスブックを用いた詐欺
2022年7月、トレンドマイクロはハッキングされた可能性のある2つのFacebookアカウントを発見しました。これらのアカウントは「ハリケーン、洪水の被災者、また新型コロナウイルスの罹患者は、給付金がもらえる」という詐欺メッセージを投稿していました。メッセージでは、「download.tw1988[.]link」でユーザが登録手続きを行えば給付金申請が可能と謳っていますが、この実態はフィッシングサイトです。使用しているリンクは、災害等により困難な状況下にある人々に経済的援助を提供するために設置された政府の公式Webサイト「https://1988.taiwan.gov.tw/」を装っていたため、警戒を怠ったユーザは被害に遭った可能性があります。
詐欺:セクストーション及び暗号資産
「TgToxic」が使用するネットワークインフラを追跡した結果、台湾及びインドネシアにおけるセクストーションや暗号資産関連詐欺の背後にいる攻撃者を特定するに至りました。不正なアプリは、「TgToxic」と同一のWebサイトである「down[.]tw1988[.]link」からダウンロードされ、デートアプリ、メッセージ交換アプリ、ライフスタイルアプリ、または暗号資産関連のアプリを装ってユーザを騙しインストールさせることにより、アクセス権限を有効化させます。
最近の活動 :タイにおけるフィッシング詐欺
マルウェア「TgToxic」及びそのネットワークインフラの監視を続ける過程で、2022年末から2023年1月初めにかけて、この脅威の背後に存在する攻撃者がタイのユーザを標的にし始めたことが明らかになりました。当攻撃では、以前台湾のユーザを標的にした際と同じセクストーションやフィッシング詐欺の手口を用いています。さらに、銀行のアプリから認証情報を窃取するため、攻撃グループが不正なコードを追加したことも確認されています。これら2つの攻撃の概要については、既に現地メディアで取り上げられており、Facebook上においても報告がなされています。
フィッシング詐欺、セクストーション、暗号資産関連詐欺は全て同じWebサイトである「down[.]tw1988[.]link」からダウンロードされており、これはマルウェア「TgToxic」の最新の検体の展開との関連性を示すものです。C&C(Command and Control)サーバとの通信の解析から、これらのアプリやマルウェアのC&Cは、標的とする国が台湾からタイに変わることに伴いapi[.]tw1988[.]link からtest[.]ja7[.]siteへ、さらにus[.]ja7[.]site へと変更されていることが判明しました。
「TgToxic」のテクニカル解析
トレンドマイクロは、マルウェア「TgToxic」が正規の自動化テストフレームワーク「Easyclick」をベースに開発されたことを解析結果から確認しました。このフレームワークは、JavaScriptによる自動化スクリプトの作成をサポートします。また、当スクリプトは、Androidデバイスの UI(ユーザーインターフェース)をハイジャックする際に使用され、ユーザにより入力された情報の監視やクリック、ジェスチャ等の関数を自動化します。
このフレームワークを用いることにより、「TgToxic」は、独自の自動化スクリプトを開発することが可能となりました。これにより、被害者にユーザ名とパスワードを入力させて認証情報を盗み出し、暗号資産のウォレットや銀行アプリをハイジャックすることができます。認証情報の取得が完了すると、攻撃者はユーザの承認を必要とせずに、公式アプリ上で少額取引を行うことが可能となります。他のバンキングマルウェアと同様に、「TgToxic」もSMSやインストールされたアプリを介してユーザの個人情報を窃取します。被害者のデバイス内の他のアプリの中に、更に窃取対象となる資産が狙えそうなものがあるかスキャンを行い、もし対象となるものがあれば盗み出された個人情報は更に悪用されることとなります。
「TgToxic」は、急速に進化を遂げています。その進化とはすなわち、マルウェアへの新機能の実装、より多くのアプリからの認証情報の窃取、様々なアプリのUIへの適応を指しており、これまで以上に多くの情報を被害者から盗み出しています。
以下の分析は、タイのモバイルユーザを標的にした最新の検体の解析結果を基にしています。
コードの難読化とペイロードの暗号化
マルウェア「TgToxic」は、2つの手口を用いて検出及び解析されることを回避します。
- コードの難読化:「TgToxic」は、クラス名、メソッド名、フィールド名を難読化し、解析者によるリバースエンジニアリングを困難にします。
- ペイロードの暗号化 :「TgToxic」は、「Easyclick」スクリプトを暗号化されたZipファイルであるアセットファイル「tg.iapk」内に配置し、アプリの起動時にコンテンツを同時に読み込みます。このマルウェアは、ペイロードを復号化しロードする際はファイルレス方式を用いており、解凍後に新たなロジックを追加します。
ペイロードを復号化し、アクセシビリティサービスを不正利用することでデバイスのUIをハイジャックします。
McAidenコンサルティングの研究者が指摘するように、「tg.iapk」は暗号化されたzipファイルです。静的解析により、解凍パスワードが特別にエンコードされ、通常zipのディスクリプションを記録するために使用されるzipのコメントセクションに格納されていることが明らかになりました。なお、当セクションのコンテンツは、圧縮されたコンテンツに影響を与えることはありません。zipファイルのパスワードを取得するために、コメントセクションのコンテンツはコードで規定された通りに復号化されます。
解凍後の全てのファイルがバイナリファイルであり、また全てのファイルの最初の4バイトが「0x00092383」であることが明らかになりました。そして、これらのファイルは別に暗号化されています。さらに、トレンドマイクロは逆解析により、復号化関数を発見することにも成功しました。復号化の詳細を隠すため、キー・クラス及びキー・メソッドはリフレクションを使って呼び出され、関連するシンボル名は暗号化されています。
復号化関数を解析することで、暗号化されたファイルの形式を確認することができます。暗号化されたファイルは、エンコードされたパスワードをファイルの先頭(マジックナンバーの次)に保存し、暗号化されたデータをファイルの末尾に保存します。パスワードの復号化は、zipパスワードの復号化と同じ方法により実施します。
ランタイムエンジンで稼働するプリコンパイルされたスクリプト
自動化スクリプトは、Javaでプリコンパイルされます。そして、オープンソースエンジンであるRhino(JavaにおいてJavaScriptを実行するために用いる)のランタイムを使用します。また、呼び出し関数の各ブランチの切り替えはJavaScript関数です。マルウェアのシンプルな関数を用いて、いかにしてコードが実行されるかにつき以下に解説します。
この関数は、デバイス情報を収集し、C&Cサーバに送信するために使用されます。まず、「walletListAry(定義済み変数)」を反復処理します。「walletListAry」には、攻撃対象となる暗号資産ウォレットのパッケージ名の一覧が含まれます。次に、マルウェアは「isAppExist」を呼び出して、アプリがシステム内に存在するか否かを確認します。存在が確認された場合、パッケージ名は配列に転送されます。
その後、マルウェアは同様に電子メールアプリを確認し、収集した情報を含む「.json」オブジェクトを作成します。「apps」フィールドには、インストールされている暗号資産ウォレットのパッケージ名が、そして「mails」フィールドにはインストールされている電子メールアプリのパッケージ名が含まれます。最後に、「JSON.stringify」を呼び出し「.json」オブジェクトをシリアル値に変換し、続けて「emitEnc」を呼び出し、WebSocketを介してC&Cサーバに情報を送信します。
C&C通信とデータ抽出
このマルウェアは、スクリプトを実行するC&CチャネルとしてWebSocketを使用します。まず、「StartWs」を呼び出しWebSocketサーバに接続します。次に、イベントリスナ「new_msg」を設定し、C&Cコマンドを受信及びパースします。使用するC&Cコマンドの一覧は以下の通りです。
<別ファイル参照>
表1:コマンドの全リストと各機能
更に注目すべきこととして、「TgToxic」は、感染したデバイスのロケール(地域)により異なるC&Cサーバに接続しています。トレンドマイクロはこの脅威の追跡を継続していますが、現在のところ、これまでに確認された3地域以外の地域や国では活動はまだ検知されていません。しかし前述の通り、「TgToxic」の背後にいるグループは、様々な地域において異なるC&Cサーバを利用することができるため、今後他の国や地域に活動範囲を拡大する恐れがあります。
データは、C&Cチャネルを介して抽出されます。SMSからの抽出例を参考にすると、マルウェアはまず「getSmsInPhone」を呼び出し、メッセージの受信箱から全てのSMSを抜き出します。そして、WebSocket C&Cチャネルを介して窃取したデータをサーバにアップロードします。
アクセス権限の自動付与とアンインストールの阻止
「TgToxic」は、システムアプリをハイジャックして自動的にアクセス権限を得るだけでなく、被害者によるマルウェアのアンインストールを阻止します。マルウェアによるハイジャックの対象となりうるシステムアプリの一覧とその目的は以下の通りです。
<別ファイル参照>
表2:マルウェアが制御を試みるシステムアプリの一覧
金融系アプリを制御し自動送金を実施
「TgToxic」は、自動振替サービス(ATS 、Automatic Transfer Service)を実装しており、ユーザに知られることなく攻撃者に送金を行います。このマルウェアは、まずパスワード及びロック解除のジェスチャを盗み取ります。そして、ユーザがウォレットアプリを持っていることを検知すると特定のアクティビティを確認し、ユーザがパスワードを入力した際にはキーロギングを用いて記録します。加えて、攻撃者はデバイスのロックを解除するジェスチャのスクリーンショットを撮影することもできます。
C&Cサーバから「walletSend」コマンドを受信すると、マルウェアは攻撃の進行や不正送金の実施を被害者に認識されないように、ブラックスクリーンのオーバーレイを表示します。その後、攻撃者はウォレットアプリを開き、暗号資産の種類や残高等の情報を収集します。そして、「TgToxic」はアクセシビリティサービスを用いて、「特定の受取人」への送金のためにユーザがクリックする動作をシミュレートします。なお、この暗号資産の送金は全種類のブロックチェーンのプラットフォームに対応しています。
- 暗号資産が「USDT」であるかを確認し、ウォレットの詳細を入力
- 「送金」をクリック
- 受取人のアドレスを入力
- 「送金額」を入力
- 送金の詳細ページを入力
- パスワードを入力
- 「確認」をクリック
標的となるアプリ
マルウェアにより被害者の情報が窃取される可能性のあるアプリの一覧を以下に紹介します。これらは、タイを標的とした攻撃で得られた最新の検体の調査を基に作成しました。
<別ファイル参照>
表3:当マルウェアが情報を窃取するアプリの一覧(Androidデバイスが感染した場合)
まとめ
台湾、インドネシア、タイを標的としたソーシャルメディアを用いたフィッシング攻撃、及びそのネットワークインフラは、その展開時期が異なるにもかかわらず互いに似通っています。いずれの場合も攻撃者は、ユーザを欺いて不正なアプリやサイトに登録させ、マルウェアをインストールさせることによりアクセス権限を有効化させています。具体的には、不正なWebサイトから被害者が偽装アプリをダウンロードするように仕向ける場合や、WhatsAppやViber等のメッセージングアプリを通じて被害者とやりとりし、登録するよう仕向ける場合などが含まれます。アクセス権限が有効化されると、被害者のスマートフォンは攻撃者によって自動的に制御され、デバイス内の正規アプリ及びその資産は危険に晒されることになります。
このマルウェア自体は複雑な構造を持ちませんが、興味深い仕組みを採用しています。まず、当マルウェアは「Easyclick」や「Autojs」等の正規の自動化フレームワークを不正利用します。その結果として、アクセシビリティサービスを悪用するAndroid用バンキングトロジャンとして展開させることが容易になります。また、それらのフレームワークの複雑さから、調査解析の際のリバースエンジニアリングは困難なものとなります。今後より多くの攻撃者が、このようなフレームワークの利便性やリバースエンジニアリングが困難であることを逆手に取り、当マルウェアの手口を継承していくことが予想されます。
トレンドマイクロは解析の結果、この攻撃に関与したグループまたは個人はサイバー攻撃の経験が浅いと判断しました。一方で、中国語の繁体字及び簡体字を使用するコンポーネントが存在することから、対象地域の動向や標的について比較的詳しいことが窺えます。また、補助金配布に関連する詐欺が2022年8月に台湾で多発していたことも注目に値します。公的機関は、このような詐欺について繰り返し警告を発していましたが、主要なニュースとしてはあまり大きく報道されませんでした。
さらに、攻撃の企図や展開については把握できたものの、実際の被害者数については確たる情報を掴むことができませんでした。これは、この脅威に対応するインテリジェンスやデバイスの検知能力が向上したこと、また非公式のプラットフォームからダウンロードを行わないなど脅威を回避する手段をユーザが認識するようになり、この種のマルウェアによる感染を防ぐことが容易になったためと推測されます。今後この攻撃の被害に遭わないために注意すべき感染の兆候、そしてベストプラクティスを以下に紹介します。
- 不明なソースやプラットフォームからアプリをインストールすることは控えてください。SMSや電子メールに直接埋め込まれたアプリ、インストーラ、Webサイトをクリックしないでください。特に、心当たりのない送信者から届いたものについては注意してください。
- 未知のアプリをダウンロードし使用する目的で、アクセシビリティサービス等の機密性の高いアクセス権限を有効にしないでください。
- デバイスを使用していないにもかかわらずバッテリーの減りが早い場合は、マルウェアに感染している可能性があります。
トレンドマイクロのソリューション
トレンドマイクロのモバイルセキュリティソリューションは、モバイルデバイスをリアルタイムかつオンデマンドでスキャンし、不正なアプリやWebサイト、そしてマルウェアを検出し、ブロックまたは削除します。モバイルセキュリティソリューションは、「TgToxic」のような不正なアプリやサイトによる脅威を極小化し、ユーザのデバイスを保護します。このセキュリティソリューションは、Android及びiOSでご利用いただけます。
IOC(痕跡情報)
IOC(痕跡情報)の全リストは、こちらをご覧ください。
参考記事
TgToxic Malware’s Automated Framework Targets Southeast Asia Android Users
By: Trend Micro
翻訳:新井 智士(Core Technology Marketing, Trend Micro™ Research)