Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSubmit PR adding malicious .patch file
-
DeliveryHide ../../ traversal in diff header
-
ExploitMaintainer checks out branch
-
ExecutionRun pnpm install applies patch
-
ImpactWrite/delete arbitrary files as user
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the target project uses pnpm's patch feature (a |
| Impact | Signals are partially conflicting and should be read together. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:H, 7.3) indicates a network-reachable, low-complexity attack with high integrity and availability impact but no confidentiality loss, gated by required user interaction (a maintainer running install) - consistent with the supply-chain / pull-request delivery model described. No EPSS score was provided, the CVE is not in CISA KEV, and no POC was referenced, so there is no evidence of active or imminent mass exploitation; this is best treated as a targeted, social-engineering-dependent threat rather than a wormable internet-facing bug. The PR:L in the vendor vector is debatable - submitting a public pull request requires no privileges on the victim's system, so an argument for PR:N (raising the score) exists, while the real limiting factor is UI:R: a maintainer must actually check out the branch and run install. Net: a genuine and credible supply-chain risk for projects that accept external patch contributions, but lower urgency than a high CVSS alone would imply because exploitation hinges on a human merging/running untrusted patch files. |
| Exploit ScenarioDerived | An attacker opens a pull request to a target repository that adds or modifies a |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 25, 2026
Arbitrary file write and deletion in pnpm package manager (versions prior to 10.34.0 and 11.4.0) lets a malicious contributor abuse the @pnpm/patch-package pipeline, which applies .patch files without validating the file paths in their diff --git headers. Because patch diff headers are opaque to most code reviewers, an attacker can slip ../../ traversal sequences into a pull request and, when a maintainer runs pnpm install, write attacker-controlled content to or delete arbitrary files with the privileges of the installing user. There is no public exploit identified at time of analysis, and the issue is not listed in CISA KEV; the moderate-to-high CVSS of 7.3 reflects high integrity and availability impact gated by required user interaction.
RemediationAI
Upgrade pnpm to a fixed release - Vendor-released patch: 10.34.0 (10.x line) or 11.4.0 (11.x line) - as documented in advisory GHSA-rxhj-4m44-96r4 (https://github.com/pnpm/pnpm/security/advisories/GHSA-rxhj-4m44-96r4); pin the upgraded version in CI runners and developer environments since the trigger is pnpm install. Until you can upgrade, treat .patch files in patchedDependencies as executable code in code review and require manual inspection of every diff --git/+++/--- header for ../ traversal sequences before merging external pull requests, accepting that this is error-prone because diff headers are opaque to reviewers. Stronger compensating controls: run installs for untrusted branches inside a sandbox or ephemeral container with no write access outside the workspace, disable or remove patchedDependencies usage where the patch feature is not needed, and forbid auto-running pnpm install in CI on unmerged fork PRs (or run such jobs with a low-privilege, isolated filesystem) - the trade-off is added CI friction and loss of the convenience of patch-based dependency fixes.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw lives in pnpm's patch application feature (@pnpm/patch-package), which lets projects ship .patch files in the patchedDependencies field of package.json to modify installed dependency source at install time. Patches are unified diffs whose diff --git a/... b/... and +++/--- headers declare which files to modify; pnpm parses these headers and writes the resulting files relative to the target package directory. The root cause is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory / Path Traversal): pnpm canonicalizes and trusts the header-supplied path without confining it to the package root, so ../../ segments escape the intended directory and resolve anywhere on the filesystem the install user can reach. The affected component is identified by the CPE cpe:2.3:a:pnpm:pnpm:*:*:*:*:*:*:*:*, i.e. the pnpm CLI/package itself across all versions below the fixed releases.
Know when Pnpm gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:H
Submitting a public PR needs no privileges on the victim (PR:N), but a maintainer must run install (UI:R); reliable traversal (AC:L) yields high integrity/availability impact and no confidentiality loss.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
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.
Executive ViewAI
pnpm package manager prior to versions 10.34.0 and 11.4.0 is vulnerable to arbitrary file write and deletion through malicious patch files in pull requests. Attackers can exploit path traversal in the @pnpm/patch-package component when maintainers run pnpm install, creating a supply chain compromise risk that affects system integrity across development and build environments.
No vendor-released patch identified at time of analysis. Interim controls: (1) Require dedicated code review for .patch files focusing on diff --git header inspection for path traversal sequences; (2) Execute pnpm install only within isolated, short-lived container environments with minimal privileges; (3) Disable @pnpm/patch-package plugin if not required; (4) Deploy file system integrity monitoring (AIDE, Tripwire, osquery) on dev and build systems; (5) Whitelist approved patch contributors; (6) Pin pnpm versions and avoid automatic upgrades until patches are certified.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
Arbitrary code execution in the pnpm package manager (versions 10.0.0 through 10.25) lets a git-hosted dependency run co
pnpm is a package manager. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable, no authentica
Path traversal in pnpm before 10.34.0 and 11.4.0 lets a malicious registry package smuggle '../' segments inside a trans
Arbitrary code execution in the pnpm package manager (versions prior to 10.34.2 and 11.5.3) lets a malicious repository
Arbitrary command execution in pnpm before 10.34.2 and 11.5.3 allows a malicious repository to run attacker-chosen nativ
Supply-chain integrity bypass in pnpm package manager (versions ≤10.26.2, per description; GHSA states <10.26.0) allows
PNPM v6.15.1 and below was discovered to contain an untrusted search path which causes the application to behave in unex
Integrity-check bypass in the pnpm package manager (versions before 10.34.0/10.34.1 and 11.0.0-11.3.x) lets tampered pac
Command injection in pnpm versions 6.25.0 through 10.26.2 allows attackers controlling environment variables to execute
Scoped path traversal in pnpm allows arbitrary filesystem overwrites during package installation, defeating the --ignore
Arbitrary command execution in pnpm before 10.34.0 and 11.4.0 allows a malicious lockfile to run code on a developer's m
Path traversal in pnpm's `pnpm stage download` command (versions 11.3.0 through 11.5.2) lets a malicious or compromised
EUVD-2026-39492
GHSA-rxhj-4m44-96r4
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB