
セキュリティ企業のAikido Securityは現地時間9月8日、Node.jsのパッケージマネジャーnpmでインストールできる18のパッケージに悪意のあるコードが含まれていたと発表した。
悪意のあるコードが含まれていたのは、debug、chalk、ansi-styles、ansi-regexなどで、多いものでは週に3億ダウンロードを超えるほどの人気パッケージだったという。18個すべてをあわせると毎週20億以上のダウンロード数となる。
悪意のあるコードは、ブラウザでの暗号通貨取引を傍受することを目的としたもの。Webアプリケーションにバンドルされると、クライアントサイドで実行され、暗号通貨とウォレットのやりとりが傍受され、支払先が攻撃者の管理アドレスにリダイレクトされる。
パッケージマネジャーを介したサプライチェーン攻撃が成立することになる。発端となったのは、npmのメンテナーに対するフィッシング攻撃だった。攻撃者は、2要素認証を更新するメールを使って認証情報を取得していたという。
Aikidoでは、対策として、npmキャッシュの消去、リポジトリ内のすべてのパッケージの再インストール、パッケージロックファイルを使用して固定バージョンを使用することを挙げている。
また、Node.jsを利用できるホスティングサービスのVercelでは、今回のサプライチェーン攻撃の発覚を受けて、推奨事項や予防策を提案している。それによると、npm auditなどで既知の脆弱性をチェックすること、CI/CDパイプラインに依存関係スキャンを実装することなどだ。また、同社自身で、疑わしいパッケージの更新に対する監視の強化やインシデント発生時にキャッシュを迅速に無効化するためのツールの改善などに取り組むとしている。
【参考】:npm debug and chalk packages compromised
【参考】:Critical npm supply chain attack response - September 8, 2025 - Vercel
ライター