CVE-2026-50014 json
pnpm: Git Fetch Argument Injection via Lockfile resolution.commit
published 2026-06-25 4 mo ago modified 2026-11-03 5 d ago also EUVD-2026-39490 , GHSA-p4xf-rf54-rj3x
- cvss
- 6.4
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 24%
- public exploits
- 0
- none known
Summary
pnpm is a package manager. Prior to 10.34.0 and 11.4.0, pnpm passes the lockfile-controlled git resolution.commit value to git fetch without a -- separator or commit-format validation. For git dependencies fetched through the shallow-fetch path, a malicious lockfile can replace the expected 40-character commit hash with a Git option such as --upload-pack=<command>. For SSH and local transports, --upload-pack can execute the supplied command. HTTPS transports ignore --upload-pack, so the practical attack surface is primarily SSH or local git dependencies. This vulnerability is fixed in 10.34.0 and 11.4.0.
Patch / fix
- npm pnpm 10.34.0, 11.4.0
- pnpm pnpm 10.33.4, 11.4.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-50014 updated cvss 6.4
pnpm: pnpm: Arbitrary Code Execution via Malicious Lockfile
-
Red Hat AMQ Broker 7 pnpm Red Hat Build of Keycloak pnpm Red Hat JBoss Enterprise Application Platform 8 pnpm Red Hat JBoss Enterprise Application Platform Expansion Pack pnpmaffected: workaround, no fix available “Fix deferred”
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
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 4 mo ago
Exploit prediction
0.32% chance of exploitation in the next 30 days, higher than 24% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/pnpm/pnpm/security/advisories/GHSA-p4xf-rf54-rj3x referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 6.4 | CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N |
| GitHub | 3.1 | 6.4 | CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N |
| NVD | 3.1 | 7.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | pnpm | <10.34.0 >=11.0.0, <11.4.0 |
10.34.0 11.4.0 |
Affected products
- pnpm pnpm
Classification
- Weakness
-
- CWE-88 Improper Neutralization of Argument Delimiters in a Command
References
-
github.com
/pnpm/pnpm/security/advisories/GHSA-p4xf-rf54-rj3x
exploit, web, mitigation, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-50014
advisory
-
github.com
/pnpm/pnpm
package
Sources
- CVE List CVE-2026-50014
- GitHub Advisory GHSA-p4xf-rf54-rj3x
- NVD CVE-2026-50014
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.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.