Skip to main content

pnpm CVE-2026-55698

| EUVDEUVD-2026-39484 HIGH
Insufficient Verification of Data Authenticity (CWE-345)
2026-06-25 GitHub_M GHSA-w466-c33r-3gjp
8.8
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
8.8 HIGH
AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
vuln.today AI
8.8 HIGH

Malicious repo is network-delivered and unauthenticated (AV:N/PR:N) but the victim must run pnpm (UI:R); resulting arbitrary code execution yields full C:H/I:H/A:H with unchanged scope.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Red Hat
8.8 HIGH
qualitative

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Patch available
Jun 25, 2026 - 19:17 EUVD
Analysis Generated
Jun 25, 2026 - 18:17 vuln.today

DescriptionCVE.org

pnpm is a package manager. Prior to 10.34.2 and 11.5.3, pnpm can persist package-manager bootstrap metadata in the first YAML document of pnpm-lock.yaml. Before the patch, direct pnpm execution trusted an already resolved packageManagerDependencies entry when the committed env lockfile contained matching pnpm and @pnpm/exe versions. A malicious repository could therefore commit package-manager lockfile package records and snapshots that bypassed fresh package-manager resolution, then cause pnpm to install and execute bytes selected by that committed lockfile state during automatic version switching. This vulnerability is fixed in 10.34.2 and 11.5.3.

AnalysisAI

Arbitrary code execution in the pnpm package manager (versions prior to 10.34.2 and 11.5.3) lets a malicious repository hijack pnpm's automatic version-switching mechanism. By committing crafted package-manager bootstrap metadata in the first YAML document of pnpm-lock.yaml - including matching pnpm and @pnpm/exe versions plus package records and snapshots - an attacker bypasses fresh package-manager resolution and causes pnpm to install and execute attacker-selected bytes when a developer runs pnpm in the cloned repo. No public exploit identified at time of analysis; the high CVSS of 8.8 reflects full confidentiality, integrity, and availability impact, gated only by the user running pnpm against the poisoned repository.

Technical ContextAI

pnpm supports automatic package-manager version switching, where it bootstraps and runs the pnpm/@pnpm/exe version pinned for a project. This bootstrap metadata (packageManagerDependencies) can be persisted in the first YAML document of the lockfile (pnpm-lock.yaml). The flaw is a CWE-345 (Insufficient Verification of Data Authenticity) issue: direct pnpm execution trusted an already-resolved packageManagerDependencies entry whenever the committed env lockfile contained matching pnpm and @pnpm/exe versions, treating committed lockfile package records and snapshots as authoritative instead of performing fresh, trusted package-manager resolution. The affected component is the pnpm CLI itself (CPE cpe:2.3:a:pnpm:pnpm), and the trust boundary crossed is the lockfile committed into a repository - untrusted external data that should never be allowed to dictate which binary pnpm fetches and executes.

RemediationAI

Vendor-released patch: upgrade pnpm to 10.34.2 (10.x line) or 11.5.3 (11.x line) as the primary and complete fix, per GitHub Security Advisory GHSA-w466-c33r-3gjp (https://github.com/pnpm/pnpm/security/advisories/GHSA-w466-c33r-3gjp). Until you can upgrade across developer workstations and CI runners, the most effective compensating control is to avoid running pnpm directly inside untrusted or freshly cloned third-party repositories, and to disable or pin automatic package-manager version switching so pnpm does not bootstrap a version dictated by the committed lockfile (trade-off: you lose convenient per-repo automatic version selection and must manage pnpm versions explicitly). Additionally, review and scrutinize the first YAML document / packageManagerDependencies and env lockfile entries of pnpm-lock.yaml in incoming pull requests and untrusted repos before executing pnpm, and run package installs for untrusted code inside sandboxed or containerized environments to contain any execution (trade-off: added workflow friction). Pin a known-good pnpm version in CI rather than letting repos select it.

More in Pnpm

View all
CVE-2025-69264 CRITICAL POC
9.8 Jan 07

Arbitrary code execution in the pnpm package manager (versions 10.0.0 through 10.25) lets a git-hosted dependency run co

CVE-2023-37478 CRITICAL POC
9.8 Aug 01

pnpm is a package manager. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable, no authentica

CVE-2026-50016 HIGH POC
8.8 Jun 25

Path traversal in pnpm before 10.34.0 and 11.4.0 lets a malicious registry package smuggle '../' segments inside a trans

CVE-2026-55697 HIGH POC
8.8 Jun 25

Arbitrary command execution in pnpm before 10.34.2 and 11.5.3 allows a malicious repository to run attacker-chosen nativ

CVE-2025-69263 HIGH POC
8.8 Jan 07

Supply-chain integrity bypass in pnpm package manager (versions ≤10.26.2, per description; GHSA states <10.26.0) allows

CVE-2022-26183 HIGH POC
8.8 Mar 21

PNPM v6.15.1 and below was discovered to contain an untrusted search path which causes the application to behave in unex

CVE-2026-50021 HIGH POC
8.1 Jun 25

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

CVE-2025-69262 HIGH POC
7.8 Jan 07

Command injection in pnpm versions 6.25.0 through 10.26.2 allows attackers controlling environment variables to execute

CVE-2026-50015 HIGH POC
7.3 Jun 25

Arbitrary file write and deletion in pnpm package manager (versions prior to 10.34.0 and 11.4.0) lets a malicious contri

CVE-2026-50014 HIGH POC
7.3 Jun 25

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

CVE-2026-55700 HIGH POC
7.1 Jun 25

Path traversal in pnpm's `pnpm stage download` command (versions 11.3.0 through 11.5.2) lets a malicious or compromised

CVE-2026-55699 MEDIUM POC
6.5 Jun 25

Path traversal in pnpm's global package management flows allows deletion of the global bin directory or its parent when

Vendor StatusVendor

Share

CVE-2026-55698 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy