Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessPublish package with malicious alias metadata
-
DeliveryLand package in victim's dependency tree
-
ExploitVictim runs pnpm install (even --ignore-scripts)
-
ExecutionTraversal alias used as link path
-
PersistProject paths replaced with attacker symlinks
-
ImpactCode execution on next build/run
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Relative path traversal prevention
|
| Exploitation Conditions | Exploitation requires that the victim run a pnpm install (UI:R) with a vulnerable pnpm version (<10.34.0 or <11.4.0) and that the dependency graph resolve a package whose registry metadata supplies a transitive dependency alias containing path-traversal ( |
| Impact | The provided CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H = 8.8) reflects a network-delivered, low-complexity attack requiring only that a victim install an affected dependency (UI:R). The most operationally significant detail is that exploitation works under |
| Exploit ScenarioDerived | An attacker publishes (or compromises) a package whose metadata declares a transitive dependency alias containing |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 25, 2026
Path traversal in pnpm before 10.34.0 and 11.4.0 lets a malicious registry package smuggle '../' segments inside a transitive dependency alias, which pnpm then trusts as a filesystem path while linking dependency nodes. During a normal install - even with pnpm install --ignore-scripts - this allows a published package to replace paths inside the victim's project with symlinks pointing at attacker-controlled dependency directories, corrupting project integrity and enabling downstream code execution. No public exploit is identified at time of analysis; risk is amplified because the bug fires without lifecycle scripts, defeating the --ignore-scripts safety habit.
RemediationAI
Vendor-released patch: upgrade pnpm to 10.34.0 (for the 10.x line) or 11.4.0 (for the 11.x line) or later, per advisory GHSA-hwx4-2j3j-g496 (https://github.com/pnpm/pnpm/security/advisories/GHSA-hwx4-2j3j-g496); pin the upgraded version in CI runners, Corepack/packageManager fields, and developer environments so older binaries cannot silently run. Because the flaw triggers even under --ignore-scripts, do not rely on that flag as a control. Until upgrade is complete, reduce exposure by installing only from a vetted private registry or lockfile-pinned dependencies and avoiding fresh resolution of new transitive packages (trade-off: blocks legitimate dependency updates), running installs in disposable/sandboxed CI containers with no write access to sensitive host paths (trade-off: added CI complexity), and reviewing lockfile diffs for unexpected alias values or symlink targets before merging (trade-off: manual review overhead). These limit blast radius but are not equivalent to the patch.
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
pnpm is a content-addressable Node.js package manager that builds a nested node_modules layout by symlinking packages from a global store into per-project dependency nodes. The flaw is a CWE-23 (relative path traversal): the dependency 'alias' field, sourced from untrusted registry package metadata for transitive dependencies, is not sanitized before being concatenated into a link target path. Because pnpm reuses that alias as the on-disk location when materializing the dependency graph, embedded ../ sequences escape the intended node_modules subtree and let the resolver write symlinks to arbitrary locations relative to the project root. The affected component is pnpm itself (cpe:2.3:a:pnpm:pnpm:*), and the trigger lives in the link/resolution phase rather than in lifecycle (install/postinstall) scripts.
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:N/UI:R/S:U/C:H/I:H/A:H
Network-delivered malicious package, low complexity, no attacker privileges, but victim must run install (UI:R); symlink replacement is primarily integrity/availability, with only secondary confidentiality (C:L).
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 allows a transitive dependency alias from registry package metadata to contain path traversal segments. During install, pnpm later uses that alias as a filesystem path when linking dependency nodes. As a result, a registry package can cause pnpm install --ignore-scripts to replace paths in the current project with symlinks to attacker-controlled dependency package directories. This vulnerability is fixed in 10.34.0 and 11.4.0.
Executive ViewAI
pnpm dependency resolver vulnerability (CVE-2026-50016) enables attackers to inject malicious code into projects during routine package installation, bypassing common safety practices like --ignore-scripts. Organizations using vulnerable pnpm versions face supply chain compromise, corrupted build artifacts, and unauthorized code execution that could affect both development and production environments.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Implement strict registry verification and package signature validation where supported, (2) Audit lock files and node_modules for unauthorized symlink entries, (3) Restrict package registry sources to approved, curated registries only, (4) Deploy supply chain scanning tools to detect anomalous dependency modifications, (5) Enforce code review for all dependency changes and lock file modifications until patch is available.
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
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 file write and deletion in pnpm package manager (versions prior to 10.34.0 and 11.4.0) lets a malicious contri
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-39494
GHSA-hwx4-2j3j-g496
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB