CVE-2026-50014: pnpm argument injection in git-fetcher via lockfile commit resolution

CVE-2026-50014 · Severity: medium · CVSS 6.4 · Published 2026-06-25

pnpm is a popular package manager for JavaScript projects. A vulnerability exists where a malicious project configuration file (lockfile) can trick pnpm into executing arbitrary commands on a developer's machine during the installation process. This occurs when a project uses specific Git-based dependencies, potentially allowing an attacker to gain control over the developer's environment or steal sensitive data.

Technologies: pnpm (npm). Vendors: npm.

Quick answers

Is CVE-2026-50014 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-50014 being exploited in the wild.
How severe is CVE-2026-50014?
Medium severity, with a CVSS score of 6.4, published 25 June 2026.
Which products and versions are affected?
pnpm (npm) SEMVER:introduced=0,fixed=10.34.0.
Is there a fix for CVE-2026-50014?
Yes. pnpm (npm): upgrade to 10.34.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-50014 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-50014?
Check whether you run pnpm (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • pnpm (npm): upgrade to 10.34.0 or later
    npm install pnpm@10.34.0

Technical details

An argument injection vulnerability exists in pnpm's Git fetcher component (fetching/git-fetcher/src/index.ts). The application passes the 'resolution.commit' value from the pnpm-lock.yaml file directly to 'git fetch' and 'git checkout' commands without using a '--' positional argument separator or validating the commit hash format. An attacker can craft a lockfile where the commit hash is replaced with Git options like '--upload-pack=<command>'. When pnpm performs a shallow fetch over SSH or local transports, Git executes the injected command. This vulnerability requires the victim to run 'pnpm install' on a project with a malicious lockfile using SSH or local Git transports; HTTPS transports are not affected. Patches are available in versions 10.34.0 and 11.4.0.

Affected products

  • pnpm pnpm < 10.34.0, >= 11.0.0 < 11.4.0

Identifiers

  • CVE-2026-50014
  • GHSA-p4xf-rf54-rj3x

Timeline

  • 2026-05-28: disclosed
  • 2026-06-25: advisory: NVD publication
  • 2026-06-26: patched: GitHub Advisory published/updated with patch versions

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.