ブラジルの組織に関連するバンキングマルウェアのキャンペーンは、KREMLINというツールを利用し、ユーザーの同意を求めるプロンプトを表示せずに、Google ChromeとMicrosoft Edgeへ悪意ある拡張機能をインストールしている。Elastic Security Labsによると、このキャンペーンは2025年半ばから活動しており、12行の銀行を装った誘い文句を使って、少なくとも7件のキャンペーンを実施した。
感染は、ユーザーが銀行の領収書、請求書、支払い記録、または業務文書に見せかけたJavaScriptファイルを開くと始まる。解析環境に対する検査を通過すると、このファイルはNode.jsのダウンロード、永続化のためのスケジュールタスクの作成、そしてEthereumネットワーク上のスマートコントラクトからの拡張機能ペイロードの場所の取得と同時に、偽のエラーを表示する。
マルウェアはどのようにブラウザーの保護を回避するのか?
KREMLINは、ブラウザーが閉じられるのを待つか、アイドル状態を検知するとブラウザーを終了させ、その後、拡張機能をChromeとEdgeのプロファイルフォルダーへコピーする。続いて開発者モードを有効にし、ChromiumブラウザーのSecure Preferencesファイルに拡張機能を登録する。
最も注目すべき点は、Chromiumの設定の整合性を検証する仕組みを再現することである。このマルウェアは、ブラウザーが機密データの保護に使用する暗号鍵を利用し、必要なHMAC値と暗号化ハッシュを再生成する。そのため、ユーザーの同意を得ていないにもかかわらず、拡張機能はブラウザーにとって正当なものに見える。Elasticは、この技術について文書化されているものの、マルウェアで確認されることはまれだと説明している。
閲覧セッションを監視する拡張機能
インストールされた拡張機能はAVSyncという名称を装い、次のような幅広いデータ収集を実行する。
- Cookie、ローカルストレージのデータ、セッションストレージの窃取。
- パスワードを含む、フォームに入力されたテキストの記録。
- スクリーンショットとウェブページのソースの取得。
- 開いているタブと閲覧履歴の一覧化。
- HTTPリクエストのボディーとヘッダーの傍受。
- 攻撃者が制御するHTMLコンテンツの挿入とクリックのリダイレクト。
- WebSocket接続を介したコマンドの受信。
このツールは拡張機能にとどまらず、ブラウザーのデータベース、Cookie、インストール済み拡張機能、そして一部のデータの保護を解除するために必要なApp-Bound暗号鍵も収集する。
インフラとキャンペーンの規模
KREMLINのキャンペーンは、ペイロードの場所を探す仕組みとしてEthereumのスマートコントラクトを使用し、Internet Archiveのサービスを通じてホストされたJPEG画像内にペイロードを隠していた。最近のキャンペーンでは、リモートアクセスツールとしてREMCOSが配布された一方、以前の活動ではPulsar RATが使用されていた。研究者は、REMCOSのほうが機能が豊富であるため移行した可能性が高いとみている。
Elasticは、スマートコントラクトを公開・更新したEthereumウォレットを特定し、そのウォレットが約20,800 USDTの入金と19,000 USDTの出金を処理していたと述べた。また、1,515台の感染システムを確認し、そのほとんどがブラジルに存在していた。
なぜこのニュースが重要なのか?
このキャンペーンが重要なのは、ユーザーをだまして拡張機能をインストールさせるだけでなく、ブラウザーのファイルとセキュリティメカニズムを改変し、拡張機能を承認済みのものに見せかけている点にある。実際には、見慣れない拡張機能が存在することや、同意ウィンドウが表示されないことだけでは、侵害を検出する十分な手がかりにならない。この手法は、編集部の見解では、セッションデータの窃取範囲を直接的なパスワードから、アクティブなセッション、ページの内容、ウェブリクエストにまで広げる。そのため、Elasticが公開した侵害指標は、調査とインシデント対応において重要となる。
Elasticは、攻撃者が解析環境を検査するためのシグナルとして使用していたドメインを登録することで、現在のキャンペーンを無効化することに成功した。これにより、マルウェアローダーは感染対象となるシステムを疑わしい環境と解釈し、実行を停止するようになった。この措置によってインフラ全体が完全に排除されたことを情報源は証明していないが、この仕組みによって現在のキャンペーンは停止した。