このマルウェアは、人工知能、アクセシビリティサービスの悪用、そしてAndroid Debug Bridge(ADB)ペアリングを組み合わせることで、銀行認証情報、決済用PIN、ワンタイムパスワード、ロック画面データを窃取します。
RatHatはスミッシングメッセージ、悪意のある広告、フィッシングサイト、サードパーティのダウンロードポータルを通じて拡散します。
被害者は、動画配信サービスやブラウザ、金融アプリなど正規アプリを装ったAPKファイルを手動でインストールするよう誘導されます。
一般的なAndroidマルウェアとは異なり、RatHatは悪意のあるアプリ単体には依存しません。多段階の感染チェーンを用いてシェルレベルのアクセス権を取得し、ネイティブツールを展開したうえで、被害者が元のアプリを削除した後も活動を継続します。
インストール後、RatHatは被害者にアクセシビリティサービスを有効化させようとします。その際、ローカライズされたHTMLページや金融・ネットワーク関連の口実を用いて権限を取得します。
権限が付与されると、マルウェアは複数の機微な操作を自動化します。開発者向けオプションを開き、ビルド番号の設定を7回タップし、ワイヤレスデバッグを有効化したうえで、デバイス画面に表示されるADBペアリングコードとポート番号を読み取ります。
続いてRatHatは、内蔵のADBライブラリを使ってデバイスのローカルADBデーモンとペアリングします。これにより、攻撃者はUSB接続されたパソコンを必要とせずにシェルレベルのアクセス権を得ることができます。
このマルウェアは、Androidのネイティブライブラリを装ったGo言語製のバイナリを2つ展開します。1つはliblocal-service.soという名称で、特権を持つローカルエージェントとして機能し、/data/local/tmpディレクトリから実行されます。
もう1つのlibmedia_codec.soはFast Reverse Proxyのクライアントで、感染したスマートフォンと攻撃者のコマンド&コントロール(C2)サーバーとの間に永続的なトンネルを構築します。
RatHatにはAI駆動のUI自動化機能も搭載されています。デバイスのアクセシビリティツリーをXML形式にシリアライズし、選別したデータを生成AIアシスタントに送信します。
AIは画面上の座標を特定し、表示中のテキストを取得したうえで、スクロールなどのナビゲーション操作を提案できます。これにより、このマルウェアは固定の自動化スクリプトに従うのではなく、リアルタイムで動作を適応させることが可能になります。
RatHatは偽のHTMLオーバーレイを用いて、銀行系・暗号資産・決済・メッセージングの各アプリを狙います。標的とするアプリが開かれると、マルウェアはユーザー名、パスワード、カード情報、PINを取得するために作られた偽の画面を表示します。
SMSメッセージや通知を傍受し、OTPや二要素認証コードを窃取することも可能です。アクセシビリティ機能を悪用したキーロガーは、マスクされたパスワードフィールドを含むテキスト変更イベントを追跡します。
さらにこのマルウェアは、Chrome、Brave、Opera、Edge、DuckDuckGo、Samsung Internetなど各種ブラウザのURLを取得することもできます。より高度な機能では、シェルレベルのgeteventツールを使って/dev/inputからの生のタッチデータを監視します。
これにより、RatHatは画面上の座標を追跡し、設定情報に保存されたキーパッドレイアウトを用いてPINやロック解除パターンを復元することが可能になると、Zimperiumは述べています。
注記: IPアドレスおよびドメインは、意図せぬ名前解決やハイパーリンク化を防ぐため、意図的に無害化表記(例: [.])としています。再度有効な形式に戻す作業は、MISP、VirusTotal、あるいは自社のSIEMなど、管理された脅威インテリジェンス基盤内でのみ行ってください。
16,000以上のSOCチームがANY.RUNを活用し、脅威調査の効率化と手作業の削減を実現しています。貴チームでも導入を検討する
翻訳元: https://cyberpress.org/rathat-steals-banking-otps/