npmで公開直後の危険なパッケージをブロックする方法【min-release-age設定】

npmで公開直後の危険なパッケージをブロックする方法【min-release-age設定】

2026.04.15

動作確認環境: Windows 11 / npm 11.12.1

はじめに

Claude CodeやClaude DesktopのMCPサーバーを使うには、npmでパッケージをインストールする場面があります。そのインストールを行う前に、この記事の設定をしておくことをおすすめします。

npmパッケージを狙ったサプライチェーン攻撃の手口として、正規パッケージに成りすました悪意あるパッケージを公開し、インストールさせるというものがあります。

これを防ぐ設定が min-release-age です。指定した日数が経過していないパッケージのインストールをブロックできます。

本記事では設定手順と、「設定したはずなのに npm config get で確認すると null が返ってくる」 というハマりポイントを解説します。


設定方法

%USERPROFILE%\.npmrc(Windowsの場合 C:\Users\ユーザー名\.npmrc)に以下を追記します。ファイルがなければ新規作成してください。

min-release-age=3

これで公開から3日未満のパッケージのインストールがブロックされます。

%USERPROFILE% とは
Windowsの環境変数で C:\Users\ユーザー名 を指します。
エクスプローラーのアドレスバーに %USERPROFILE% と入力してEnterを押すと直接開けます。


ハマりポイント:設定したのに null が返ってくる

設定後に確認しようとすると、こうなります。

> npm config get min-release-age
null

これは正常です。

min-release-age は内部で before という設定値に変換されて保持されます。そのため npm config get min-release-age では null が返りますが、実際には動作しています。


正しい確認方法

動作確認は before で確認します。

> npm config get before
2026-04-12T00:00:00.000Z

このように日時が表示されれば設定が有効になっています(表示される日時は実行日から3日前の日付)。


まとめ

項目 内容
設定ファイル %USERPROFILE%\.npmrc
設定内容 min-release-age=3
設定の確認 npm config get min-release-agenull が返るが正常
正しい確認方法 npm config get before で日時が返れば有効

この記事をシェアする

関連記事