GlassWorm がネイティブに:同じインフラ、強化された配信

GlassWormが戻ってきた。また。10月にこのキャンペーンを初めて暴露して以来、2つの波、45,000人以上の被害者、そして決して止まらない攻撃者を目撃しました。

前回の開示の後、数週間は静かでした。その後、11月22日に、おなじみのSolanaウォレットが新しいトランザクションと新しいC2 IPで目覚めました。そして数日以内に、悪意のある拡張機能が再び現れ始めました。

しかし、この波は異なります。

最初のレポートで暴露した目に見えないUnicode技術?完全になくなりました。

代わりに、コンパイルされたRustバイナリが見つかりました。それらの見えない文字からデコードした機能(Solana C2ルックアップ、AES復号化、ペイロードステージング)はすべて、簡単にはデコードできないネイティブコードにコンパイルされています。何が起こっているかを確認するには、Rustバイナリをリバースエンジニアリングする必要があります。

今回、彼らはOpenVSXを超えて拡大し、MicrosoftのオフィシャルVSCodeマーケットプレイスもターゲットにして、最初はクリーンな拡張機能を公開し、その後マルウェアで更新しました。

ウォレットと攻撃チェーンは変わらないままですが、ペイロードはネイティブバイナリの内部に隠されています。

人気のあるvscode-icons themeを装う拡張機能であるIconesvscodeを見てみましょう:

Image

Image

バージョン12.15.0?クリーン。アイコンテーマが行うべきことを正確に行う22,765行のJavaScriptを備えた正当なアイコンテーマ。

しかし、バージョン12.15.1と12.15.2が出たとき、コードベース全体がこれに置き換わられました:

Image

33行しか残っていません。アイコンテーマの機能なし。オペレーティングシステムを検出してネイティブバイナリを実行するバイナリローダーだけです。

それらの.nodeファイル – macOSの場合はdarwin.node、Windowsの場合はos.node – はRustバイナリであり、すべてを含んでいます。

バイナリの内部

各拡張機能はこれらのネイティブバイナリで満杯です 

構造:

  • Rustベース(プロジェクトは文字通りrust_implantという名前です)
  • Windows(os.node)とmacOS(darwin.node)の個別ビルド
  • 各約2.4 MB
  • Node.jsアドオン形式

機能性:

  • SolanaブロックチェーンをC2命令についてクエリします
  • ペイロードを取得して復号化します(Base64、AES-256-CBC)
  • Googleカレンダーフォールバック組み込み

開発者トレース:

macOSバイナリには次のようなパスが含まれています:

/Users/davidioasd/Downloads/rust_implant/target/release/deps/librust_implant.dylib

/Users/davidioasd/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-body-util-0.1.3/src/combinators/collect.rs

そのdavidioasd文字列は、最初の波のバイナリで見たパターンと一致します。同じ開発者、同じキャンペーン、数週間離れています。

次は何か

拡張機能はすべて削除されました。

Solanaウォレットはまだあります。攻撃者のインフラはまだ稼働中です。そして、彼らはテイクダウンが彼らを長く止めることができないことを二度示しました。

監視を続けています。パターンに基づいて、これはおそらく最後の波ではありません。

IoC(侵害の指標)

拡張機能

OpenVSX:

  • bphpburn.icons-vscode
  • clangdcode.clangd-vscode
  • csvmech.csv-sql-tsv-rainbow
  • cweijamysq.sync-settings-vscode
  • eamodas.shiny-vscode
  • flutcode.flutter-extension
  • iconkief.icon-theme-material
  • msjsdreact.react-native-vscode
  • saoudrizvsce.claude-dev
  • saoudrizvsce.claude-devsce
  • solblanco.svelte-vscode
  • svltsweet.svetle-for-cursor
  • tailwind-nuxt.tailwindcss-for-react
  • vitalik.solidity
  • yamlcode.yaml-vscode-extension

Microsoft VSCode:

  • bphpburnsus.iconesvscode
  • iconkieftwo.icon-theme-materiall
  • clangdcode.clangd-vsce
  • codevsce.codelddb-vscode
  • csvmech.csvrainbow
  • cweijamysq.sync-settings-vscode
  • dart-vsc.code-dart
  • flutcode.flutter-extension
  • klustfix.kluster-code-verify
  • lyywemhan.code-formatter-and-minifier-vscode
  • msjsdreact.react-native-vsce
  • prettier-vsc.vsce-prettier
  • prisma-inc.prisma-studio-assistance
  • redmat.vscode-quarkus-pro
  • saoudrizvsce.claude-devsce
  • solblanco.svetle-vsce
  • vims-vsce.vscode-vim
  • vsceue.volar-vscode
  • yamlcode.yaml-vscode-extension

Rust Implants(SHA-256)

darwin.node

  • 026873b940176d103d45b41c9fba73f14cfcaca60e3117be81d2eadef85a4d17
  • 9bd105ce732218f30719fd69d4555967b362d37f4f6aec04741c18aaa7411a73
  • fb07743d139f72fca4616b01308f1f705f02fda72988027bc68e9316655eadda

os.node

  • cbb3f830731fe2c9194f7fe5aa55479cffdae184039b0df078b1394209d7a49f
  • 29875e74f033c819c1acab58ef08bc35646aab5f4a2747ee0933ca41150d7099
  • 6ebeb188f3cc3b647c4460c0b8e41b75d057747c662f4cd7912d77deaccfd2f2

コマンド&制御:

  • 217.69.13.229
  • 45.76.45.151
  • 45.32.151.157
  • 107.191.62.170
  • 104.238.191.54(流出サーバ)
  • 108.61.208.161(流出サーバ)

翻訳元: https://www.koi.ai/blog/glassworm-goes-native-same-infrastructure-hardened-delivery

ソース: koi.ai