npm ライブラリ node-ipc にサプライチェーン攻撃:Cloud 認証情報/SSH キーを窃取

Popular node-ipc npm Library Hit by Supply Chain Attack, Impacting 822K Weekly Downloads

2026/05/15 gbhackers — 週次のダウンロード数 822,000 件を超える npm パッケージが、深刻なサプライチェーン攻撃の中心となり、JavaScript エコシステム全体に新たな懸念を引き起こしている。人気ライブラリ node-ipc に存在する、ステルス性の高い認証情報窃取マルウェア/バックドアなどを取り込んだ複数の悪意のバージョンを、Socket のセキュリティ研究者が発見した。影響を受けるバージョン node-ipc@9.1.6/9.2.3/12.0.1 が、公開後の数分以内に検知された。

Socket によると、この悪意のコードは高度に難読化されており、開発環境および CI/CD パイプラインから機密データを密かに収集した上で、隠蔽された DNS チャネルを通じて外部へ流出させるよう設計されている。

node-ipc サプライチェーン攻撃

インストール時のスクリプトやタイポスクワッティングに依存する従来の npm 攻撃とは異なり、このキャンペーンではペイロードが CommonJS エントリポイント (node-ipc.cjs) に直接埋め込まれており、パッケージが読み込まれると悪意のコードが自動実行される仕組みとなっている。そのため、きわめて検知が困難である。

このマルウェアが実行されると、以下のアクションが引き起こされる。

  • OS レベルデータを使用したホスト識別
  • ローカル・ファイルおよび環境変数の列挙
  • 認証情報/トークン/コンフィグ・ファイルの収集
  • データの圧縮および暗号化
  • DNS TXT クエリを使用したデータの流出

興味深い点として、ESM (ECMAScript Modules) 版は影響を受けておらず、node-ipc を require するアプリケーションのみが影響を受ける。このマルウェアは、以下を含む幅広い高機密性の開発資産を標的としている。

  • クラウド認証情報 (AWS/Azure/GCP/OCI)
  • SSH キーおよび Git 認証情報
  • Kubernetes/Docker コンフィグ
  • .env ファイルおよびデータベース・コンフィグ
  • Terraform および CI/CD シークレット

さらに、API キー/トークン/認証シークレットを含む可能性がある “/etc/hosts” や、環境変数全体のダンプなどのシステム・レベルの情報も収集する。これらの収集データは、検知を回避するためにリネームされ、”.tar.gz” アーカイブとして圧縮された後に、一時保存を経て外部へ流出される。実行が中断された場合には、これらのアーカイブがディスク上に残存する可能性があり、フォレンジック上の重要なアーティファクトとなる。

この流出の際に、マルウェアは通常の HTTP チャネルではなく DNS TXT クエリを使用してデータを流出させるほか、正規 Azure インフラを模倣した以下のドメインと通信する。

  • sh[.]azurestaticprovider[.]net (ブートストラップ・リゾルバ)
  • bt[.]node[.]js (データ流出ドメイン)

このペイロードは、エンコード済みデータを数千件の小規模な DNS クエリに分割するため、詳細なネットワーク監視なしでは検知が困難であり、単一感染であっても数万件の DNS リクエストが発生する可能性がある。

メンテナ・アカウント侵害

初期調査によると、この攻撃は侵害された npm メンテナ・アカウントに起因する可能性が高い。期限切れメール・ドメインを悪用する攻撃者が、放置されたアカウント (atiertant) を乗っ取り、npm インフラへ直接侵入することなく認証情報をリセットし、悪意のパッケージを公開したと、研究者たちは推定している。

この手法が浮き彫りにするのは、オープンソース・エコシステムにおいて、放棄または非アクティブ状態のメンテナ・アカウントが攻撃入口となるリスクの増大である。

また、node-ipc は、2022年に発生した地理ターゲット型の破壊的マルウェアを巡る論争にも関与しており、今回における悪意のコードの再出現は、単なる模倣攻撃ではなく、継続的な侵害または意図的な再導入の可能性が示唆される。

ユーザーに対して強く推奨されるのは、影響を受けるバージョンを直ちに削除し、依存関係 (トランジティブ依存関係を含む) の監査を実施することだ。特に、CommonJS 版をロードしたシステムは、侵害済みとして扱うべきである。それと同時にセキュリティチームは、DNS ログ内における異常な TXT クエリ急増を監視し、既知の悪性ドメインをブロックする必要がある。

さらに、クラウドキー/SSH キー/API トークンを含む認証情報のローテーションも必須である。このインシデントは、信頼されたオープンソース・パッケージであっても一夜にして攻撃ベクターとなり得る現実を改めて浮き彫りにしている。依存関係のプロアクティブ監視は、もはや任意ではなく必須である。

Indicators of Compromise (IoCs)
  • Malicious package versions:
    • node-ipc@9.1.6
    • node-ipc@9.2.3
    • node-ipc@12.0.1
  • Suspicious domains:
    • sh[.]azurestaticprovider[.]net
    • bt[.]node[.]js
  • DNS query patterns:
    • xh., xd., xf.* subdomains
  • Temporary file path:
    • /tmp/nt-<pid>/<machineHex>.tar.gz
  • Artifact indicator:
    • Files timestamped Oct 26, 1985

注記: IP アドレスおよびドメインは、誤解決やハイパーリンク化を防止するため意図的に defang されている (例: [.])。再構成は MISP/VirusTotal/SIEM など管理された脅威インテリジェンス環境内でのみ実施すること。