CVE-2026-59195
WysokieCVSS 8.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 17 - wyżej niż 17% wszystkich znanych CVE
Streszczenie
pnpm przed wersjami 10.34.4 i 11.8.0 akceptuje nazwy pakietów z sekcji configDependencies pliku pnpm-lock.yaml i używa ich bezpośrednio do tworzenia dowiązań symbolicznych w katalogu node_modules/.pnpm-config. Złośliwe repozytorium może dostarczyć spreparowany plik blokady zawierający nazwę konfiguracji z sekwencją nawigacji (traversal), co prowadzi do stworzenia dowiązania poza zamierzonym katalogiem.
Ocena ryzyka
Atakujący może wykorzystać tę podatność do nadpisania plików poza katalogiem projektu, potencjalnie uzyskując zdalne wykonanie kodu lub trwałe uszkodzenie systemu podczas instalacji zależności.
Rekomendacja
Należy natychmiast zaktualizować pnpm do wersji 10.34.4 lub 11.8.0. Przed aktualizacją nie uruchamiaj pnpm install w repozytoriach, którym nie ufasz.
Oryginalny opis (angielski, źródło NVD)
pnpm is a package manager. Prior to 10.34.4 and 11.8.0, pnpm accepts package names from the env lockfile configDependencies section and uses those names directly when creating config dependency symlinks under node_modules/.pnpm-config. A malicious repository can commit a crafted pnpm-lock.yaml whose env-lockfile document contains a traversal-shaped config dependency name. During pnpm install, pnpm installs the config dependency and creates a symlink at a path derived from that name. This vulnerability is fixed in 10.34.4 and 11.8.0.

