Hackers Impersonate Node.js Installer in Google Ads to Deploy Infostealer Malware
2026/06/22 CyberSecurityNews — Node.js インストーラーを装う新たなマルウェア・ローダーを配布するために、ハッカーたちは偽の Google Ads を使用している。このキャンペーンは米国の Windows ユーザーを積極的に標的としており、正規に見えるスポンサード検索広告を 1 回クリックするだけで、被害者の端末に情報窃取型マルウェアが密かにインストールされる。この攻撃は、オンラインでソフトウェアを検索して、上位の検索結果を信頼するという、多くの人々の行動を悪用するものである。このケースでは、正規の Node.js プラットフォームを模倣する悪意のランディング・ページを、脅威アクターが構築していた。

スポンサード広告をクリックする被害者は、中間ドメインを経由して密かにリダイレクトされ、正規のクラウド・ファイル共有サービス上でホストされた、悪意の Windows バッチ・スクリプトがダウンロードされる。この仕組みにより、セキュリティ・ツールによる検知は大幅に困難となる。
Elastic Security Labs の研究者は、この進行中のキャンペーンを特定する一方で、自社顧客の 1 社が標的となっていたことを確認した。この OXLOADER というローダーは新たなものであり、静的アンチウイルス・エンジンや自動サンドボックス環境において、きわめて低い検出率が示されたと、同社は述べている。
このキャンペーンは Google Ads を介して展開されており、悪意の広告主アカウントは、ウクライナと関連付けられる認証済みの名義で登録されていた。広告が最後に表示されたのは 2026年4月23日であり、Google は当該広告主および関連するキャンペーンを、2026年5月14日の時点で 完全に削除した。
この攻撃で特に懸念されるのは、信頼されたプラットフォームへ脅威アクターがシームレスに溶け込み、警戒を招くことなくペイロードを配信していた点にある。この攻撃チェーンを通じて、最終的に配信される CASTLESTEALER は、感染したシステムから機密データを窃取する .NET ベースの情報窃取型マルウェアである。
セキュリティ・チームは、開発者向けのツールに関するスポンサー付き検索結果を慎重に扱うべきである。エンドポイントの振る舞い検知機能を監視モードだけではなく、有効な検知/防御モードで運用するとともに、ソフトウェアのダウンロード元については、ベンダーの公式 Web サイトを直接確認する必要がある。
偽装 Node.js インストーラーを配布する手法
この感染チェーンは、ユーザーが Node.js インストーラーを検索して、スポンサー付きの悪意の検索結果をクリックした時点で始まる。そのクリックにより、被害者は正規の Node.js 環境を模倣した偽のランディング・ページへと誘導される。
続いて、中間ドメインを経由したリダイレクトにより、Storj でホストされたバッチ・スクリプトが配信される。この脅威アクターは、レピュテーション・ベースのフィルタリングを回避するために、正規のクラウド・ストレージ・サービスである Storj を悪用していた。
このバッチ・スクリプトは説得力のある、偽のソフトウェア・インストール・ウィザードを表示するため、被害者は容易に欺かれてしまう。このインターフェイスの裏側では、Windows User Account Control (UAC) のプロンプトによる高権限のシステム・アクセスが取得され、次段階の実行ファイルが PowerShell を介してダウンロードされる。一連の動作は、通常のソフトウェア・インストールに見えるよう設計されている。
2026年5月13日には、OXLOADER の亜種も発見されている。この亜種は、API Monitor ではなく Node.js インストーラー・バイナリを装っていたが、基盤となるローダーの仕組みは完全に同一であった。
研究者が注目するのは、このファイル名に含まれる “node” という単語であり、キャンペーン全体を通じて利用されていた、おとりのテーマを維持するためであると考えられている。
OXLOADER が検出を回避する手法
OXLOADER は、検知回避を中核機能として構築されている。実質的な処理を実行する前に、サンドボックスや仮想マシン内で実行されていないことを確認するために、5 種類の個別チェックを実行する。
これには、以下の確認が含まれる。
- CPU コア数が少なくとも 3 個あること
- 物理 RAM が少なくとも 3 GB あること
- ディスプレイのリフレッシュ・レートが 20 Hz を超えること
- システムが CIS 地域に存在しないこと
- ロシア語に設定されていないこと
このローダーでは、標準的なバイナリ解析ツールを無効化または破壊する、高度な難読化技術も採用されており、リバース・エンジニアリングを困難にしている。それらの悪意のコードは、正規プログラムによる実行命令ではあまり使用されない、Windows の “.reloc” セクション内に隠蔽されているほか、自己変更型の復号ルーチンを使用してメモリ上で自身を展開する。
さらに、最終ペイロードである CASTLESTEALER は、DonutLoader と呼ばれるオープンソースのシェルコード生成ツールを介して完全にメモリ上で実行されるため、ディスク上にはほとんど痕跡が残されない。
侵害の指標 (IoCs)
| Type | Indicator | Description |
|---|---|---|
| Domain | nodejs-preventive.info | Malvertising landing page |
| Domain | app.miloyannopoulos.com | Malvertising redirector |
| SHA-256 | fdfc9780b3c67acac3ca1acfdc9a890dcfee2d5d58fbcef8eac3fc80aa1cf2b3 | OXLOADER downloader and launcher (Bild0erSetup.bat) |
| SHA-256 | de2b7c7a9e7c006e7ca990e77e7dff9b8b73aa9e9e24b98a7f88d3b3fff7c2b3 | OXLOADER downloader and launcher (Bild0erSetup.bat variant) |
| SHA-256 | ca99a9fd118f8a99a9bc99ca9bb9cdfc7cd3b3db9fbcd3fecd3fecd7fe9f0f6f | apimonitor-x64.exe (OXLOADER) |
| SHA-256 | ce8f8dcb3ca9e9190fd7818f1e7ab87b9fc8f8e7fc88fee8fcc8f8e7fc88fee8 | node-v20.7.0-x64.exe (OXLOADER) |
| SHA-256 | 9a67a98fdc9e8e6e7886e9c0e8c668b87c0b66e8f07c8e1f7e89f7c8ca7e8cc8 | CASTLESTEALER |
| IPv4 | 52.78.2.74 | CASTLESTEALER C2 |
| IPv4 | 52.78.77.48 | CASTLESTEALER C2 |
注:IP アドレスおよびドメインは、誤った名前解決やハイパーリンク化を防ぐため、意図的に無害化されている (例:[.] )。再度有効化するのは MISP/VirusTotal/SIEM などの管理された脅威インテリジェンス・プラットフォーム内に限定すべきである。
訳者後書:Google 検索エンジンの広告枠が悪用され、正規の Node.js プラットフォームを模倣する偽サイトへ、開発者が誘導されてしまいました。開発ツールを探す際に、上位の広告を信頼してしまう心理が狙われています。また、正規のクラウド・サービスを経由する仕組みや、サンドボックス検知を回避する 5 種類のチェックなど、セキュリティの目をすり抜ける高度な難読化技術が使われていたことも検知を遅らせた原因です。結果として、通常のインストールに見せかけたバッチスクリプトにより権限が奪われ、メモリ上で実行される OXLOADER や情報窃取型マルウェアの侵入を許してしまいました。
.webp)
.webp)
.webp)
.webp)
You must be logged in to post a comment.