GitHubは6月9日(現地時間)、次期メジャーバージョンとなる「npm v12」を7月にリリースする予定であることを発表した。
npm v12では、npm install時のデフォルト挙動に複数のセキュリティ関連の変更が加えられる。現在npm 11.16.0以降では、これらの変更による警告が表示され、ユーザーはv12への移行準備ができる。
主な変更点として、allowScriptsオプションのデフォルトがオフとなり、npm install時に依存先パッケージの事前・インストール・事後スクリプトが明示的な許可なく自動実行されなくなる。また、node-gypによるネイティブビルドやprepareスクリプトも対象となる。どのパッケージのスクリプトがブロックされるかはnpm approve-scripts --allow-scripts-pendingで確認可能となっている。
さらに、--allow-gitと--allow-remoteオプションのデフォルトがnoneとなり、GitやリモートURL(https tarballなど)からの依存解決も明示的な許可が必要になる。これらの変更はサプライチェーン攻撃対策が目的である。
移行準備として、npm 11.16.0以上へのアップグレード後に通常のインストールを行い、警告を確認しながら信頼できるパッケージのみ承認することが推奨されている。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
