
Reproduction minimale pour le bundling de picomatch 4.0.3 (CVE-2026-33671) avec Next.js 16.2.4
Reproduction minimale pour : Next.js 16.2.4 embarque picomatch 4.0.3 vendu dans node_modules/next/dist/compiled/picomatch/, qui est affecté par CVE-2026-33671 (ÉLEVÉ). Les overrides de npm ne peuvent pas atteindre la copie intégrée.
npm install
cat node_modules/next/dist/compiled/picomatch/package.json
# → {"name":"picomatch","main":"index.js",...} (champ version supprimé)
npx next build
docker build -t next-picomatch-repro .
trivy image next-picomatch-repro
Sortie attendue :
picomatch (package.json) | CVE-2026-33671 | HIGH | fixed | 4.0.3 | 4.0.4
overrides ne suffit paspackage.json peut être étendu avec :
"overrides": {
"picomatch": "4.0.4"
}
Cela installe correctement node_modules/[email protected], mais node_modules/next/dist/compiled/picomatch/ reste en 4.0.3 car il est intégré dans l'archive tarball de Next lui-même.
Next.js publie une version corrective avec dist/compiled/picomatch/ re-compilé à partir de picomatch ≥ 4.0.4. Les consommateurs en aval le récupèrent ensuite via un npm install normal.