CVE-2026-59195 json
pnpm: Path traversal in configDependencies env lockfile allows symlink creation outside node_modules/.pnpm-config
published 2026-06-27 4 mo ago modified 2026-07-08 4 mo ago also GHSA-qrv3-253h-g69c , EUVD-2026-41883
- cvss
- 8.2
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 34%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- npm pnpm 10.34.4, 11.8.0
- pnpm pnpm 10.34.4, 11.8.0
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-59195 updated cvss 8.2
pnpm: pnpm: Path traversal in configDependencies env lockfile allows symlink creation outside node_modules/.pnpm-config
-
Red Hat AMQ Broker 7 pnpm 8.10.0not affected: vulnerable code not present
-
Red Hat Build of Keycloak pnpm 8.10.0not affected: component not present
-
Red Hat JBoss Enterprise Application Platform 8 pnpm 8.10.0 Red Hat JBoss Enterprise Application Platform Expansion Pack pnpm 8.10.0not affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 4 mo ago
Exploit prediction
0.40% chance of exploitation in the next 30 days, higher than 34% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/pnpm/pnpm/security/advisories/GHSA-qrv3-253h-g69c referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.2 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:H/A:L |
| GitHub | 3.1 | 8.2 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:H/A:L |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | pnpm | <10.34.4 >=11.0.0, <11.8.0 |
10.34.4 11.8.0 |
Affected products
- pnpm pnpm
Classification
- Weakness
-
- CWE-22 Improper Limitation of a Pathname to a Restricted Directory
References
-
github.com
/pnpm/pnpm/security/advisories/GHSA-qrv3-253h-g69c
exploit, web, mitigation, vendor-advisory
-
github.com
/pnpm/pnpm
package
Sources
- CVE List CVE-2026-59195
- GitHub Advisory GHSA-qrv3-253h-g69c
- NVD CVE-2026-59195
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.