pnpm: Arbitrary File Write/Delete via Malicious Patch File (Path Traversal)
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · High · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.
Summary
pnpm is a package manager. Prior to 10.34.0 and 11.4.0, pnpm's patch application pipeline (@pnpm/patch-package) performs no path validation on file paths extracted from .patch files. An attacker who contributes a malicious patch file via a pull request can write attacker-controlled content to or delete arbitrary files on the filesystem during pnpm install, as the user running the install. The diff --git header paths containing ../../ sequences traverse out of the package directory, and the traversal is difficult to catch in code review because patch file diff headers are opaque to most reviewers. This vulnerability is fixed in 10.34.0 and 11.4.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| pnpm | pnpm | before 10.33.4; 11.0.0 to before 11.4.0 | 10.33.4, 11.4.0 | Patch available | CNA |
| — | pnpm (npm) | before 10.34.0 | 10.34.0 | Patch available | GHSA-rxhj-4m44-96r4 |
| — | pnpm (npm) | 11.0.0 to before 11.4.0 | 11.4.0 | Patch available | GHSA-rxhj-4m44-96r4 |
- pnpm Vendorpnpm Affected before 10.33.4; 11.0.0 to before 11.4.0 Fixed in 10.33.4, 11.4.0 Patch available CNA
- pnpm (npm) Vendor— Affected before 10.34.0 Fixed in 10.34.0 Patch available GHSA-rxhj-4m44-96r4
- pnpm (npm) Vendor— Affected 11.0.0 to before 11.4.0 Fixed in 11.4.0 Patch available GHSA-rxhj-4m44-96r4
Remediation
- Fix · CNA pnpm (pnpm) Fixed in 10.33.4, 11.4.0
- Fix · GHSA-rxhj-4m44-96r4 pnpm (npm) Fixed in 10.34.0 Advisory →
- Fix · GHSA-rxhj-4m44-96r4 pnpm (npm) Fixed in 11.4.0 Advisory →
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
Not affected: 4 products
- Red Hat AMQ Broker 7
- Red Hat Build of Keycloak
- Red Hat JBoss Enterprise Application Platform 8
- Red Hat JBoss Enterprise Application Platform Expansion Pack
Timeline
- 2026-10-02 Threatist record created from CVE-2026-50015
- 2026-10-03 Alias added: GHSA-rxhj-4m44-96r4
References
More Pnpm vulnerabilities
- TI-2025-42715 pnpm v10+ Bypass "Dependency lifecycle scripts execution disabled by default" CVSS 3.1CRITICAL 9.8
- TI-2023-19086 pnpm incorrectly parses tar archives relative to specification CVSS 3.1CRITICAL 9.8
- TI-2026-40212 pnpm: Project env lockfile can short-circuit package-manager resolution and execute lockfile-selected pnpm bytes CVSS 3.1HIGH 8.8
- TI-2026-40211 pnpm: Repository-controlled configDependencies can select a pacquet native install engine CVSS 3.1HIGH 8.8
- TI-2026-40042 pnpm: manifest identity spoof satisfies allowBuilds and runs attacker lifecycle CVSS 3.1HIGH 8.8
- TI-2026-36842 pnpm: Transitive dependency alias path traversal allows project path override via symlink replacement CVSS 3.1HIGH 8.8
Sources
- CVE-2026-50015 · CVE Program
- CVE-2026-50015 · NVD
- FIRST EPSS
- GHSA-rxhj-4m44-96r4 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-50015 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences