Polarity Under を公開しました
2026年3月31日
2026年3月31日
2026年3月31日、npmのaxiosメンテナーアカウントが乗っ取られ、悪意あるバージョン(1.14.1 / 0.30.4)が公開されました。postinstallスクリプト経由でクロスプラットフォームRATが配布された、典型的なサプライチェーン攻撃の全容と対策まとめ。
2026年3月31日、週1億ダウンロードを超える超人気npmパッケージ axios が、メンテナーアカウント乗っ取りによるサプライチェーン攻撃を受けました。
悪意あるバージョンは約2〜3時間でnpmから削除されましたが、影響範囲は甚大です。
TL;DR:axios@1.14.1またはaxios@0.30.4をインストールした環境は侵害済みとして扱い、すべての秘密情報をローテーションしてください。
ifstap@proton.me)に変更し、npm publish権限を完全掌握攻撃者は以下の2バージョンを39分以内に公開:
axios本体のコードは完全にクリーン。変更点は package.json に偽の依存関係 plain-crypto-js@^4.2.1 を追加しただけ。
攻撃は約18時間前から準備されていた:
2026-03-30 05:57 UTC — クリーンな plain-crypto-js@4.2.0 を公開(正規の crypto-js を装ったtypoquatパッケージ)2026-03-30 23:59 UTC — ペイロードを仕込んだ plain-crypto-js@4.2.1 を公開2026-03-31 00:05 UTC — Socket社の自動検出が6分以内にフラグを立てる2026-03-31 00:21 UTC — axios@1.14.1 公開2026-03-31 01:00 UTC — axios@0.30.4 公開plain-crypto-js@4.2.1 の postinstallスクリプト(setup.js)が本体:
npm install 実行と同時に自動起動(2秒以内にC2接続開始)sfrclak.com:8000 / 142.11.206.73)に接続setup.js を自己削除し、package.json をクリーンなものに置き換えて痕跡を隠蔽インストール開始から完全な侵害まで約15秒。事後に node_modules/plain-crypto-js/ を検査してもマルウェアの痕跡はなし。npm audit やコードレビューでは検知不可)axios は約80%のクラウド・コード環境に存在^1.14.0 や ^0.30.0 などキャレット範囲指定のプロジェクトが自動的に感染バージョンを引き込む# lockfileで高速確認(推奨)
grep -r "axios" package-lock.json | grep "1\.14\.1\|0\.30\.4"
grep -r "plain-crypto-js" package-lock.json
# またはnpm ls
npm ls axios確認対象期間: 2026-03-31 00:21〜03:15 UTC の間に npm install を実行した環境
npm install axios@1.14.0 # 1.x系
npm install axios@0.30.3 # 0.x系rm -rf node_modules package-lock.json
npm cache clean --force
npm install感染バージョンをインストールしていた場合、以下をすべてローテーション:
.env ファイル内のすべての値以下への通信をブロック:
sfrclak.com:8000142.11.206.73^ や ~ を避け、"axios": "1.14.0" のように固定npm ci をCI/CDで使用:package-lock.json を厳密に参照--ignore-scripts フラグ:CI/CDでpostinstallを無効化