Simon Willison's Weblogツール・プロダクト更新重要度:

パッケージマネージャーに「クールダウン」機能の導入が加速

パッケージマネージャーに「クールダウン」機能の導入が加速

要約

LiteLLMで発生したサプライチェーン攻撃を受けて、ソフトウェアパッケージの依存関係更新を意図的に遅らせる「dependency cooldown」の仕組みが注目されている。この手法は、新しいパッケージバージョンをリリース直後に導入せず、数日間待ってからインストールすることで、コミュニティが悪意あるパッケージを発見する時間的猶予を確保するものである。Andrew Nesbittの調査によると、主要なパッケージマネージャーでこの機能の実装が急速に進んでいる。pnpm 10.16(2025年9月)ではminimumReleaseAgeと信頼できるパッケージの除外機能、Yarn 4.10.0(2025年9月)ではnpmMinimalAgeGateと事前承認パッケージ機能、Bun 1.3(2025年10月)ではbunfig.tomlでの設定、Deno 2.6(2025年12月)では更新コマンドでの最小依存関係年数指定、uv 0.9.17(2025年12月)では相対期間サポートとパッケージ単位の上書き機能、pip 26.0(2026年1月)では絶対タイムスタンプサポート、npm 11.10.0(2026年2月)ではmin-release-age機能がそれぞれ実装された。

洞察・気づき

サプライチェーン攻撃への対策として、業界全体で協調した動きが見られることは非常に重要である。各パッケージマネージャーが相次いで同様の機能を実装することで、開発者は使用するツールに関係なくセキュリティリスクを軽減できるようになった。特に、信頼できるパッケージを除外する機能や、パッケージ単位での設定上書き機能により、開発効率とセキュリティのバランスを取ることが可能となっている。この流れは、ソフトウェア開発エコシステム全体のセキュリティ向上に大きく貢献すると予想される。開発チームは、使用するパッケージマネージャーでこれらの機能を積極的に活用し、依存関係管理のセキュリティポリシーを見直すことが推奨される。