注目★★★★★GitHub Advisory
pnpm の patch-remove コマンド、ディレクトリ外のファイルを誤削除する脆弱性を修正
30秒で把握
- 1pnpm patch-remove に脆弱性・パッチディレクトリ外のファイル誤削除が可能だった
- 2シンボリックリンク・トラバーサルの組み合わせで任意ファイル削除を実行可能・修正版で検証強化
- 3パッチファイル管理チームは最新版への更新確認・パッチ出所の審査プロセスを強化推奨
要約
pnpm の `patch-remove` コマンドに、パッチディレクトリ外の任意ファイルを削除される脆弱性 (GHSA-72r4-9c5j-mj57) があった。細工されたパッチエントリがディレクトリを逃脱し、ファイルシステムトラバーサルで指定外のファイルを削除可能だった。修正版はシンボリックリンクの解決前に設定ディレクトリを検証し、相対パス・絶対パス・親ディレクトリトラバーサルを事前に拒否し、削除前に全ファイルの妥当性を確認する。
あなたへの影響
pnpm を使用する際にパッチディレクトリの管理に悪意あるエントリが紛れ込む状況は稀だが、依存関係管理ツールのセキュリティ境界として重要。
推奨:チームで pnpm を運用する場合、パッチファイルの出所を確認し、最新版へのアップデートを検討。