
KREMLINは、少なくとも2025年5月から活動が確認されている、主にブラジルの金融機関利用者および銀行口座保有者を標的としたバンキングマルウェア・ツールキットです。
主な目的は、被害者の端末に悪意のある Chromium(Google Chrome / Microsoft Edge)向け拡張機能を不正にインストールし、暗号資産・銀行のログイン情報、セッショントークン、Cookie、画面スクリーンショット等を無断で窃取することです。
名称に「KREMLIN」と含まれていますが、ロシア政府との直接の関連性は確認されておらず、コード内のコメントやルアー(囮)ファイル、活動時間帯から、ブラジル国内のサイバー犯罪グループによる運用と分析されています。
KREMLIN が従来のインフォスティーラー(情報窃取型マルウェア)や銀行トロイの木馬と一線を画す点は、「Chromium の最新改ざん防止機能をリバースエンジニアリングして破る手法」 と 「検知・差押えに強いブロックチェーン型C2インフラ」 の2点に集約されます。
特徴的な部分をみてみましょう。
- Chromiumにおける整合性検証(Secure Preferences / App-Bound Encryption)の完全偽装
- 仕組み
従来、Chromium系ブラウザは「Web Store外からの野良拡張機能の勝手な挿入」を防ぐため、設定ファイル(Secure Preferences)をHMACで保護しています。
さらに近年のWindows環境では App-Bound Encryption という仕組みで重要暗号鍵の抽出を強固に保護しています。
KREMLINは、ブラウザがアイドル時または強制終了させたタイミングで、COMインターフェース経由での復号要請やプロセスメモリ走査等により暗号鍵(OSCrypt / App-Bound鍵)を取得します。
マルウェア自ら正しいHMACや暗号ハッシュを再計算・改ざんすることで、「ユーザ自身が正規に許可して導入した拡張機能」であるかのようにブラウザに認識させます。 - 新規性(競合・他マルウェアとの違い)
従来のブラウザ乗っ取り型マルウェアは、警告が出やすい開発者モード(–load-extension)でブラウザを強制再起動するか、単にCookie等を盗み出す「使い捨て型」の手法が主流でした。
KREMLINの新規性は、COMインターフェースの悪用やメモリ走査により鍵を取得し、ブラウザ自体の保護機構(Secure Preferences / ABE)の整合性チェックを完全にパスするようハッシュを再計算・偽装する点にあります。
これにより、ブラウザのセキュリティ警告を一切発動させずに悪質拡張機能を「正規に導入されたもの」として常駐化させ、長期潜伏を可能にしています。
- 仕組み
- Ethereumスマートコントラクトを「デッドドロップ・リゾルバ」として悪用
- 仕組み
攻撃者は、C2(指令サーバ)のアドレスや悪性拡張機能のダウンロード元URLを直接マルウェア本体にハードコードせず、Ethereum(イーサリアム)のパブリック・スマートコントラクト上に暗号化データとして記述 しています。
マルウェアは動作時、ブロックチェーンに問い合わせを行って最新のC2アドレスを取得します。 - 新規性(競合・他マルウェアとの違い)
ブロックチェーンをC2参照先にする手法自体は過去の高度インフォスティーラー等でも見られましたが、本件は「偽装した悪質拡張機能の配信・制御インフラ」とスマートコントラクトを組み合わせ、金融機関攻撃へ特化・定着させた点に特異性があります。
通常のDNSやWebサーバと異なり、スマートコントラクト上のデータは警察やセキュリティ機関でも消去・差し押さえが不可能です。
攻撃者はトランザクションを1回送信するだけで、ばら撒き済みのマルウェア全体の参照先を安全かつ即座に変更できる極めて高い耐破壊性を実現しています。
- 仕組み
- 高度なサンドボックス回避とカナリアドメイン(キルスイッチ)の搭載
- 仕組み
実行環境がセキュリティベンダーの解析用サンドボックスか否かを調べるため、ハードウェア構成チェック(CPU/RAM/ディスク容量等)に加え、未登録の「ネットワーク・カナリアドメイン」にリクエストを送信します。
インターネット全体を疑似シミュレーションしているサンドボックス環境ではこの応答が成功してしまうため、成功を検知した瞬間にマルウェアは解析を察知して自滅・沈黙します。 - 新規性(競合・他マルウェアとの違い)
未登録ドメインへのアクセス応答の有無でサンドボックス環境の「擬似インターネット応答」を逆手に取る手法は、従来の金銭目的マルウェアでは稀であり、主に国家主導型(APT)攻撃で見られた高度なテクニックです。
本来高度なサイバー事案で用いられる防壁回避の手法が、地域限定のバンキング・トロイという金銭犯罪ツールキットへ低コストに流用・定着した点が最大の特異点と言えます。
なお、Elastic Security Labs はこの未登録カナリアドメインを先回りして取得(シンクホール化)することで、マルウェアにサンドボックス内だと誤認させ、約1,515台の被害端末における悪性拡張機能の追加および被害の拡大を未然に阻止することに成功しています。
- 仕組み
KREMLINの登場は、ブラウザの拡張機能保護メカニズム(Secure Preferences / App-Bound Encryption)がサイバー犯罪者によってリバースエンジニアリングされ、実用的な攻撃ツールキットとして武器化されたことを提示しています。
セキュリティ対策として次の取り組みが望まれます。
- ブラウザ整合性チェックの限界
ブラウザ自体の整合性検証機能だけに依存せず、端末側(EDR等)で Secure Preferences ファイルへの不審なプロセスからの書き込みや、メモリ内からの暗号鍵抽出挙動を検知・ブロックする動作ベースの防御が必要です。 - Web Store外の拡張機能追加の監視
レジストリやプロファイルディレクトリへ「ストアを経由せずに直接配置された拡張機能」を不審なアクティビティとして検出するルール整備が求められます。 - 分散型インフラへの警戒
ブロックチェーン(Ethereumなど)をC2参照先に利用する手法はテイクダウンが困難であるため、パブリックノードへの不審なRPCリクエスト通信の監視・制御が今後のThreat Intelligenceにおいて重要になります。
The extension you never installed: KREMLIN forges Chrome’s own integrity checks to steal banking sessions
https://www.elastic.co/security-labs/threat-command/malicious-browser-extension-kremlin-banking-malware
| この記事をシェア |
|---|