Nxの悪意あるパッケージによるセキュリティインシデントで、AIコーディングエージェントをマルウェアに悪用
2025年8月27日
0 分で読めます202NxおよびNx Powerpack releasesの
9月1日更新:npmで

従来のclaude、gemini、q)を悪用し、s1ngularity-repository-NNNNと
Nxの
npmの
該当バージョンをs1ngularity-repository-*を
Nxとは?
Nxは、
マルウェアがAIコーディングエージェントを悪用してデータを窃取
今回のpostinstallマルウェアは、/tmp/inventory.txt(およびバックアップ)に
確認された--dangerously-skip-permissions(Claude Code)、--yolo(Gemini CLI)、--trust-all-tools(Amazon q)などの
埋め込まれた.envファイルなどのcreating /tmp/inventory.txt(.bak)を
AIコーディングエージェントに
マルウェアには、
Nxの
AIエージェント型マルウェアの仕組み
postinstallスクリプトのtelemetry.jsは、
次に、
続いて、
最後に、
Nxの侵害では何が起きたのか?
攻撃はどのようにして可能になったのか?
調査担当者は、
Nxへの攻撃はどのように実行されたのか?
telemetry.jsとpostinstallスクリプトは、npm installまたはnpm install nxをgh auth tokenコマンドをresults.b64に
どのようなデータが、どこから狙われたのか?
ペイロードは、~/.npmrc)、SSHキー、環境変数、
破壊的な動作もありましたか?
はい。sudo shutdown -h 0を~/.bashrcと~/.zshrcの
影響を受けたパッケージとバージョン
nx:
21.5.0、20.9.0、20.10.0、21.6.0、20.11.0、21.7.0、21.8.0、20.12.0(すべて削除済み)。 Nx
プラグイン (例) : @nx/devkit、@nx/js、@nx/workspace、@nx/node、@nx/eslint(悪意ある21.5.0および/または20.9.0の各バージョン)、 @nx/key、@nx/enterprise-cloud(3.2.0)。VS Code拡張機能:Nx Console
今すぐ実施すべき対応
GitHubアカウントが
データ窃取に 利用されたか 確認してください。 s1ngularity-repository-*という 名前の リポジトリを 検索します。 見つかった 場合は、ProdSecおよびInfoSecチームの 指示に 従い、 直ちに 対応してください。 ホスト上に
存在した 可能性の あるすべての 認証情報を ローテーションしてください。 GitHubトークン、 npmトークン、 SSHキー、 および .envファイル内のAPIキーが 対象です。 ProdSecチームの
指示に 従って、 環境を 監査し、 クリーンアップしてください プロジェクト全体で
Nxが 使われているか 確認してください。 npm ls nxを実行し ( package-lock.jsonも確認)、 間接的に インストールされた 依存関係を 洗い 出します。 影響を 受けている 場合は、 アンインストールしてから nx@latestをインストールしてください。 Snykユーザーは、
Snyk SCAと Snyk SBOMを 使って、 組織全体の プロジェクトを 特定し、 監視できます。
AI CLIが
インストールされている 場合は、 シェルの 履歴を 確認し、 危険な フラグ ( --dangerously-skip-permissions、--yolo、--trust-all-tools)が使われていないか 確認してください。
今後のサプライチェーン攻撃を防ぐために
CIで
npm ciを使い、ロックファイルの 使用を 徹底してください。 インストールスクリプトは
デフォルトで 無効に する: --ignore-scriptsを使い、 ユーザーまたは プロジェクト単位の .npmrcでignore-scripts=trueを設定して、 悪意ある postinstallを無効化します。 npmの
2FAを 有効に し、 認証と 書き込みを 必須に する モードを 優先してください : npm profile enable-2fa auth-and-writes。可能な
限り、 インストール前にプロベナンスを 検証してください。 悪意ある Nxの バージョンはプロベナンスなしで 公開された一方、 最近の 正規バージョンにはプロベナンスが 付与されていた点に 注目してください。 トリアージに 役立つ シグナルです。 インストール前の
確認にはnpq(および/または Snyk Advisor)を 使い、 信頼性の シグナルと Snykの 脅威インテリジェンスに 基づいてインストールを 制御できます。 ローカルで npmをnpqにエイリアス設定する ことも 検討してください。 Snykを
使って継続的に スキャン、 監視し ( snyk test/snyk monitor)、新たな 脆弱性情報を 検知して 修正を 自動化しましょう。 Snykを 使えば、 研究開発チーム全体で 特定の 依存関係が インストールされている 場所を 探し、 特定する こともできます。 直接的な
リスクを 減らし、 公開・利用ポリシーを 徹底する ために、プライベートまたは プロキシレジストリ(Verdaccioなど)を 使用してください。
参考資料:Snykのnpmセキュリティの
攻撃のタイムライン
元の
UTC
(インシデント対応者向けの 簡潔版) :
22:32 -21.5.0公開 → 22:39 -20.9.0→ 23:54 -20.10.0+21.6.0→
8月27日 00:16 -20.11.0→ 00:17 -21.7.0→ 00:30 - コミュニティから警告 →
00:37 -21.8.0+20.12.0→ 02:44 - npmが影響を 受けた バージョンを 削除 → 03:52 - 組織への アクセスを 取り消し。 EDT
(アドバイザリの 記録) :
午後6:32 - 初回の 公開 ( @nx/*プラグインの各バージョンを 含む) → 午後 8:30 - 最初の GitHub issue →
午後10:44 - npmが 影響を 受けた バージョンと トークンを 削除。
侵害の痕跡(IoC)
ファイルシステム:
/tmp/inventory.txt、/tmp/inventory.txt.bak。シェルの rcファイル ( ~/.bashrc、~/.zshrc)にsudo shutdown -h 0が追記されている。 GitHubアカウントの
痕跡: results.b64(Base64で3重に エンコード)を 含む、 s1ngularity-repositoryという 名前の 公開リポジトリ。 ネットワーク/プロセス:
npm install中にapi.github.comへの異常な API 呼び出し。 telemetry.jsによる gh auth tokenの実行。
サプライチェーンセキュリティ攻撃について
こうした
Ultralytics(202
4年12月) :GitHub Actionsの テンプレートインジェクション攻撃に より、 悪意ある pipパッケージの 公開と 認証情報の 窃取が 発生しました。 Ultralyticsへの 攻撃は、 CIの 設定ミスに よって 成果物が 改ざんされた 事例です。 ESLint/Prettierの
メンテナーアカウント侵害(202 5年7月) :フィッシングと タイポスクワッティング( npnjs.com)によって npm認証情報が 窃取され、 人気パッケージに マルウェアが 仕込まれました。 メンテナーアカウントを 2FAで 保護する 必要性を 改めて 示す 事例です。
AIの信頼性に関する補足
ローカルの
今回の
支援ツールと
EBOOK
AIコードの ガードレール
AI生成コードの



