SOC Prime Bias: クリティカル

30 Jul 2026 15:32 UTC

DEV#POPPER RATが侵害されたJoyfill npmリリースを通じて配布される

Author Photo
SOC Prime Team linkedin icon フォローする
DEV#POPPER RATが侵害されたJoyfill npmリリースを通じて配布される
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

概要

2つの危険にさらされたベータリリースの @joyfill npmパッケージは、インポート時に実行されるJavaScriptインプラントを含む状態で発見されました。このインプラントは、Tron、Aptos、BNBスマートチェーン上のブロックチェーントランザクションを利用して、DEV#POPPERリモートアクセス型トロイのダウンロードを解決します。このキャンペーンは、影響を受けたモジュールがインポートされると同時に悪意のあるコードを実行することにより、開発者のワークステーションやCI/CDパイプラインを標的としています。

調査

Socketリサーチチームは、ベータ版の分析中にこの脅威を発見しました。 @joyfill/layouts and @joyfill/components。研究者は、難読化されたJavaScriptとブロックチェーンに支えられたディスパッチメカニズムを組み合わせた複数段階のペイロード配信チェーンを特定しました。調査により、初期ローダーがPolinRiderファミリーに関連していること、最終的なペイロードがDEV#POPPERマルウェアファミリーに属していることが確認されました。

緩和策

開発者は、影響を受けた @joyfill ベータ版を、ロックファイル、パッケージキャッシュ、ビルド環境、デプロイメント成果物から直ちに削除する必要があります。以下のような確認済みリリースに依存関係を固定することを推奨します。 @joyfill/layouts@0.1.1 or @joyfill/components@4.0.0-rc24 。セキュリティチームは、レジストリプロキシや依存関係管理ツールを通じて危険にさらされたバージョンをブロックする必要があります。

対応策

影響を受けたパッケージをインポートしたシステムは隔離され、危険にさらされたNode.jsプロセスにアクセスできるすべてのクレデンシャルは更新されるべきです。調査担当者は、開発者のアプリケーション(VS Code、GitHub Desktop、Discordを含む)についてコアモジュールへの予期しない変更を調査する必要があります。エンドポイントとCI/CDのテレメトリーも、解除されたNode.jsプロセス、既知のC2アドレス、および疑わしいブロックチェーンRPCトラフィックについてレビューされるべきです。

攻撃フロー

検出

Publicnode Ethereum 悪用の試みとしてのC2チャネル (dns_queryによる)

SOCプライムチーム
2026年7月29日

IPルックアップドメイン通信の試行 (dnsによる)

SOCプライムチーム
2026年7月29日

Linuxでのスクリーンショットを取得した可能性 (cmdlineによる)

SOCプライムチーム
2026年7月29日

Linuxホスト上に隠しファイルが作成された可能性 (file_eventによる)

SOCプライムチーム
2026年7月29日

IOC (HashSha256) を検出する: @joyfill npm ベータリリース2つが、DEV#POPPER リモートアクセス型トロイの配信に危険にさらされた

SOCプライムAIルール
2026年7月29日

IOC (SourceIP) を検出する: @joyfill npm ベータリリース2つが、DEV#POPPER リモートアクセス型トロイの配信に危険にさらされた

SOCプライムAIルール
2026年7月29日

IOC (DestinationIP) を検出する: @joyfill npm ベータリリース2つが、DEV#POPPER リモートアクセス型トロイの配信に危険にさらされた

SOCプライムAIルール
2026年7月29日

DEV#POPPER マルウェアのインジケーターを検出 [Windowsネットワーク接続]

SOCプライムAIルール
2026年7月29日

危険にさらされたJoyfill npmパッケージによるリモートアクセス型トロイの配信の検出 [Linuxファイルイベント]

SOCプライムAIルール
2026年7月29日

Node.jsモジュールの注入および解除されたプロセスの実行の検出 [Linuxプロセス作成]

SOCプライムAIルール
2026年7月29日

シミュレーション実行

前提条件: テレメトリおよびベースラインの出発前チェックが通過していること。

理由: このセクションでは、検出ルールをトリガーするための敵の技術 (TTP) の正確な実行を詳述します。コマンドと説明は、特定されたTTPに直接反映され、検出ロジックが期待する正確なテレメトリを生成することを目的とする必要があります。抽象的または無関係な例は、誤診を招きます。

  • 攻撃のストーリーとコマンド: 敵は広く使用されているnpm依存関係に悪意のあるコードを注入することに成功しました(サプライチェーンの脅威)。開発者が npm install を実行するかプロジェクトを開始すると、悪意のあるスクリプトが実行されます。このスクリプトは、まず require 関数をグローバル変数(global.r = require)に割り当てることによってその意図を隠蔽し、どこでもモジュールをロードできるようにし、 require を直接呼び出さずに(難読化)します。最後に、 child_process.spawn を使用してC2サーバーに接続する解除されたシェルプロセスを起動し、親Node.jsプロセスから悪意のあるプロセスを切り離すことで検出を回避します。

  • リグレッションテストスクリプト:

    #!/bin/bash
    # Node.js注入検出ルールを誘発するシミュレーションスクリプト。
    # 一時的な悪意のあるJSファイルを作成し、それをNode.js経由で実行します。
    MALICIOUS_FILE="malicious_pkg.js"
    echo "[+] 悪意のあるNode.jsスクリプトを作成中..."
    cat << 'EOF' > $MALICIOUS_FILE
    // グローバルモジュール注入のシミュレーション (T1027)
    global.r = require;
    // child_process.spawnによる解除プロセス実行のシミュレーション (T1059.006)
    const cp = require('child_process');
    cp.spawn('bash', ['-c', 'sleep 30 &'], { detached: true, stdio: 'ignore' });
    console.log("[!] 悪意のあるペイロードが実行されました。 ");
    EOF
    echo "[+] Node.jsを通じて悪意のあるスクリプトを実行中..."
    node $MALICIOUS_FILE
    echo "[+] シミュレーション完了。SIEMでアラートを確認: Node.jsモジュール注入と解除プロセス実行の検出。"
  • クリーンアップコマンド:

    # シミュレートされた悪意のあるファイルを削除
    rm -f malicious_pkg.js
    # シミュレーションによって生成された孤立したスリーププロセスを終了
    pkill -f "sleep 30"