CVE-2026-82393: pnpm: A tarball dependency's manifest `name` escapes node_modules → arbitrary file write/overwrite on install
pnpm is a package manager. Prior to 10.34.5 and 11.11.0, pnpm accepts a scoped path traversal in a tarball dependency's package.json manifest name because pnpm11/resolving/npm-resolver/src/pickPackage.ts rejects slash characters only for unscoped names. During pnpm install, the unvalidated name reaches raw path joins in pnpm11/installing/deps-resolver/src/resolvePeers.ts, pnpm11/installing/deps-resolver/src/index.ts, and pnpm11/deps/graph-builder/src/lockfileToDepGraph.ts, causing package extraction outside nodemodules and allowing attacker-controlled files to overwrite arbitrary filesystem paths even when --ignore-scripts is used. The overwrite can replace shell startup files, Git hooks, or installed package code and lead to code execution. This issue is fixed in versions 10.34.5, and 11.11.0.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 10.34.5 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 11.11.0
Event History
Frequently Asked Questions
Which installations are affected?
pnpm versions earlier than 10.34.5 and 11.11.0 are affected. The vulnerable behavior occurs when installing a tarball dependency whose package.json manifest contains a malicious scoped name.
Does using --ignore-scripts prevent exploitation?
No. The path traversal and arbitrary file overwrite occur during package extraction, even when --ignore-scripts is used. Script suppression therefore does not mitigate this issue.
What access does an attacker need?
An attacker needs to cause a user or build environment to install a malicious tarball dependency. The supplied severity vector indicates no pre-existing privileges are required, but user interaction is required.
What can be overwritten?
Attacker-controlled files can be written outside node_modules to arbitrary filesystem paths reachable by the install process. Examples identified include shell startup files, Git hooks, and installed package code, which can lead to code execution.
What should be done if affected?
Upgrade pnpm to 10.34.5 or 11.11.0. Until upgraded, avoid installing untrusted tarball dependencies, since disabling lifecycle scripts does not address the vulnerable extraction path.