プログラミング
NPMのリリース冷却期間はセキュリティ・シアターである
NPM's release cooldown is security theater (blog.outv.im)
要約
この記事は、NPM(Node Package Manager)などのパッケージマネージャーが導入しているリリース前の「冷却期間」が、実効性のない「セキュリティ・シアター」であると主張しています。筆者は、コミュニティによるパッケージの検証が期待通りに行われないことや、CI/CDパイプラインが脆弱性を早期に発見できないことを指摘し、代わりに「Do Your Own Research(自分で調べる)」アプローチを推奨しています。これには、静的解析ツール、SAST、サンドボックス、LLM支援監査などを活用し、コードがマージされる前やインストールされる前に積極的にスキャンすることが含まれます。
全文翻訳
NPMのリリース冷却期間はセキュリティ・シアターである
2026/7/21 · #tech · 約2.5k語 · 閲覧数:...
多くのエコシステム攻撃インシデントにより、パッケージマネージャー(およびパッカー、マネージャー)は最近、冷却期間を好むようになっています(npm、pnpm、yarnなど)。その結果、アップストリームレジストリは7日間または24時間タイムゲートされています。
蜂蜜のように甘い響きです。しかし、それは機能しません。蜂蜜ではなく、罠にはめるためのハニートラップだと言いましょう。
セキュリティ、あるいはゴドーを待つ
「コミュニティがパッケージをインストールする前に『検証』してくれるのを待つ」人もいます。しかし、人々は適切な冷却期間(例:yarnは7日、pnpmは3日)を知りません。また、ネタバレですが、誰が検証するのかさえ誰も知りません。
暗黙の前提は、誰か(コミュニティ内の誰か)が以下のことを行うということです。
温かい心で、すべてのパッケージを早期にインストールする
賢いので、何か問題に気づく
そして、群衆がそれに気づく前に(最高のサイバーラウドスピーカーを持っているため)警告を発する
すべて無料で!
しかし、現実はそれほど寛大ではありません。誰もが冷却期間を設定すると、早期導入者はいなくなります。誰もが他の誰かがカナリアになるのを待っており、カナリアは存在しません。
だから彼らはゴドーを待っているのです。そして…ゴドーは来ないのです。
CI/CDに頼る、それは無用か、あるいは遅すぎる
「他の人たちはパイプラインや何らかのCI/CD(はい、必ずしも人間である必要はありません)を使用して、dependabot PRを通じて最新のパッケージを取得します。
悪意のあるコードがある場合、次のいずれかの結果になります(CIが悪用可能/価値があるかどうかによります)。
エクスプロイトが見過ごされるか
成功する
そしてPRはマージされ、開発者は何も考えずにnpm installを実行します。誰も、何も、まだ信頼されていないコードを見ていない(package-lock.jsonを読むことはカウントされません!)ため、人々や機械はインストール前に問題に気づかず、悪意のあるコードは影響が出始めたときに初めて発見されます。言うまでもなく、手遅れでしょう。
だから、私はDYORが本当に重要だと言いたい
一言で言えば、行動せずに待つことはうまくいきません。では、代わりに何をすべきでしょうか?「自分で調べる」(Do Your Own Research)ことをお勧めします。
ベンダーコードを、インターネットからダウンロードしたランダムなWindows EXEのように扱ってください。静的解析ツールを持ってきてください。SASTを持ってきてください。サンドボックスを持ってきてください。HIPSを持ってきてください。
ベンダーコードでLLM支援監査を実行してください。
もちろん、dependabot PRがマージされる前、または開発者が自分のマシンにインストールする前です。
冷却期間や横たわるのをやめましょう。代わりに、アクティブスキャンを開始して、セキュリティ・シアターの映画ではなくしましょう。