2026年3月30日、誰かがインターネットで最もよく使われるJavaScriptパッケージの一つを乗っ取りました。そしてnpm install一回で数万台のマシンにバックドアを仕込みました。

そのパッケージはAxios。週間ダウンロード数1億回。過去10年にJavaScriptで何かを作ったことがある人なら、ほぼ確実に使ったことがあるHTTPライブラリです。攻撃者はAxiosのソースコードを一行も変えませんでした。代わりに管理者アカウントを奪い、数時間前に作った偽パッケージ一つを依存関係に追加して更新を配布しました。その偽パッケージはインストールされた瞬間にOSを検出し、カスタムのリモートアクセストロイ(RAT)をダウンロードして実行した後、自分自身を削除しました。

3秒まとめ
Axios管理者アカウント乗っ取り偽パッケージ(plain-crypto-js)を依存関係に追加npm install時に自動でRAT設置89秒で攻撃者サーバーに接続痕跡を自動削除

これは何ですか?

ソフトウェアサプライチェーン攻撃(Supply Chain Attack)です。あなたが直接使うコードではなく、あなたのコードが依存するパッケージを攻撃する手法です。

1億+
Axiosの週間ダウンロード数
755個
JSプロジェクトの中央値的推移的依存関係
267日
業界平均サプライチェーン侵害検出時間

何が変わるのですか?

従来のサプライチェーン攻撃AIエージェント時代のサプライチェーン攻撃
攻撃準備期間数ヶ月〜数年(XZ Utils: 2年かけて信頼構築)数時間〜数日(Axios: 39分で完了)
依存関係の決定主体開発者が直接レビューAIエージェントが自動インストール、レビュー時間≈0
検出方式CVEデータベース照合(npm audit)行動分析が必要(CVEなしの新規マルウェア)

要点整理:今すぐできる防御法

  1. lockfileベースのインストールを強制
    npm ciをデフォルトで使用してください。lockfileに指定された正確なバージョンのみをインストールします。
  2. 行動分析ベースのセキュリティツールを導入
    npm auditだけでなく、パッケージが実際に何をするか分析するSocketやOligoのようなツールを導入してください。
  3. AIエージェントの権限制限
    自律コーディングエージェントが依存関係を追加する際に人間の承認を経るように設定してください。
  4. postinstallスクリプトをブロック
    npm config set ignore-scripts trueを設定するとパッケージインストール時の自動実行スクリプトをブロックできます。