Zod 4.6.6 に悪意あるコードが混入、インストールは危険

Zod 4.6.6 compromised by malware?

人気の TypeScript バリデーションライブラリ Zod のバージョン 4.6.6 に、悪意あるコードが混入していることが判明した。このコードは preinstall スクリプトとして実行され、Ethereum のスマートコントラクトから指示を受けて外部サーバーから追加ペイロードをダウンロードし、実行する。npm からのインストール時に自動的に発動するため、注意が必要だ。

preinstall スクリプトが追加され、node meta.test.mjs が実行されるようになった。
  1. jaynetics

    問題のコードは実際にはリリースされていないよ。この記事に詳しい情報がたくさん載っている:

    https://github.com/orgs/community/discussions/208477

  2. yuvalkarmi

    これは3週間前の話だよ、みんな。実際にリポジトリの侵害は起きたんだ——Zodのmainには入ったが、npmには入らなかった。

    9月21日、誰かがColinのgit認証情報を使ってこの侵害されたコードをプロジェクトにpushし、Colinがそれに気づいて同じ日にrevertした(PR #6620)。その後彼は10月11日に4.6.6をリリースしたが、それには感染したコードは含まれていなかった。

    ちなみに、狙われたのはZodだけじゃない——standard-schemaとnubにも同じ攻撃が試みられた。nubは実際にnpmに到達したが、npmのマルウェアスキャンがブロックした。

    正規の(いや、正規じゃない)サプライチェーン攻撃の試みだったようだが、実際に侵害されたZodのリリースは存在しない。

  3. luggage_bazooka

    最新バージョンの4.6.6にはとても興味深いコミット(d821685)「Fix bugs and improve performance」があって、以下の変更が含まれている https://github.com/colinhacks/zod/commit/d821685ea6732436fcd...

    packages/mini/meta.test.mjs が具体的に何をしているのかはちゃんと調べていないけど、あまり良さそうには見えない

  4. jaapz

    「might」はかなり控えめな表現だね、これは感染している——編集: タイトルが変わった、元は「might be infected」と書かれていた。

    マルウェアはzodがインストールされたときに実行されるJSペイロードを、Ethereumのスマートコントラクトから取得して注入するようだ(僕の理解が正しければ)。

    npmでこのバージョンにフラグを立てるのを忘れないように。

    編集: どうやらこのアップデートはNPMには到達しなかったようだ: https://news.ycombinator.com/item?id=50053253

  5. xx_ns

    面白いことに、彼らは `preinstall` キー(インストール時に悪意あるスクリプトを実行するはずのもの)を `scripts` の下ではなく package.json のルートに追加しているので、僕が見る限りこれはインストール時には実行されないはずだ。

    それ以外は、まあ、これはEthereumメインネットからペイロードを取得して実行するためのステージ1ローダーのように見える。

この日のほかの記事

2026-10-12