Skip to main content

pnpm CVE-2026-55697

| EUVDEUVD-2026-39483 HIGH
OS Command Injection (CWE-78)
2026-06-25 GitHub_M GHSA-gj8w-mvpf-x27x
8.8
CVSS 3.1 · NVD
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Publish malicious repo with crafted pnpm-workspace.yaml
  2. Delivery
    Victim clones and runs pnpm install
  3. Exploit
    pnpm resolves repo-declared pacquet config dependency
  4. Execution
    Spawn @pacquet/<platform>-<arch>/pacquet binary
  5. Impact
    Execute attacker code as developer/CI user

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK

2 techniques across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the victim to run pnpm install (UI:R) on an attacker-controlled repository whose pnpm-workspace.yaml declares pacquet or @pnpm/pacquet as a configDependency, and which supplies a malicious @pacquet/<platform>-<arch>/pacquet native binary matching the victim's platform/arch. The attacker needs no authentication or privileges on the victim system (PR:N), but does need to deliver the malicious repo and get it installed; it only triggers on pnpm versions before 10.34.2 / 11.5.3, since patched versions no longer treat the repository-controlled config dependency as an install-engine opt-in. The principal limiting factors are the required install action and the platform-specific binary the attacker must provide.

Impact

Signals are mixed but lean toward a real, situational priority for developer and CI/CD environments. CVSS 8.8 (AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H) reflects high confidentiality, integrity, and availability impact with no privileges required, but the UI:R requirement (a victim must clone and install a malicious repo) materially gates exploitation. SSVC aligns with this: Exploitation=poc, Automatable=no, Technical Impact=total - total impact but not mass-automatable, consistent with targeted supply-chain or social-engineering use rather than internet-wide scanning. EPSS is very low at 0.12% (2nd percentile), and the CVE is not in CISA KEV, so there is no evidence of active in-the-wild exploitation despite public POC code. The 'network' attack vector is somewhat optimistic here - exploitation is really delivery-via-repository plus a local install action - so defenders should read AV:N as 'attacker-controlled repo content' rather than a remote service exposure.

Exploit ScenarioDerived

An attacker publishes or contributes to a repository whose pnpm-workspace.yaml declares pacquet (or @pnpm/pacquet) as a config dependency and ships a malicious @pacquet/<platform>-<arch>/pacquet native binary. A developer or CI pipeline clones the repo and runs pnpm install, at which point pnpm resolves and spawns the attacker's binary with the developer/CI user's privileges, achieving code execution. Public exploit code exists, and the low attack complexity (AC:L) means no special timing or conditions are needed beyond the victim performing the install.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv3 – Jun 30, 2026

Arbitrary command execution in pnpm before 10.34.2 and 11.5.3 allows a malicious repository to run attacker-chosen native binaries as the developer or CI user during a routine install. The flaw stems from pnpm processing configDependencies in pnpm-workspace.yaml before command dispatch: a repo could declare pacquet/@pnpm/pacquet as a config dependency, causing pnpm to resolve a platform-specific @pacquet/<platform>-<arch>/pacquet binary from node_modules/.pnpm-config and spawn it. Publicly available exploit code exists, though EPSS is low (0.12%, 2nd percentile) and it is not in CISA KEV.

Earlier versions of this analysis (2)
v2 Jun 30, 2026 - 19:13 cvss changed CVSS 8.8

Arbitrary command execution in the pnpm package manager (versions prior to 10.34.2, and 11.0.0 through 11.5.3) lets a malicious repository run attacker-chosen native binaries on a developer or CI machine. Because pnpm processed configDependencies declared in pnpm-workspace.yaml before command dispatch, a repository could declare 'pacquet' or '@pnpm/pacquet' as a config dependency, causing pnpm to resolve a repository-controlled @pacquet/<platform>-<arch>/pacquet binary and spawn it as the install-running user. Publicly available exploit code exists, though EPSS is low (0.12%) and it is not on the CISA KEV list.

v1 Jun 25, 2026 - 18:17 CVSS 7.5

Arbitrary command execution in pnpm before 10.34.2 and 11.5.3 allows a malicious repository to run attacker-controlled code on a developer or CI machine during pnpm install. Because pnpm processed configDependencies from pnpm-workspace.yaml before command dispatch, a repository could declare pacquet/@pnpm/pacquet as a config dependency, causing pnpm to resolve a platform-specific @pacquet/<platform>-<arch>/pacquet binary from node_modules/.pnpm-config/ and spawn it as the install user. No public exploit identified at time of analysis and it is not listed in CISA KEV, but the attack requires only that a victim clone and install a crafted repository.

RemediationAI

Vendor-released patch: upgrade pnpm to 10.34.2 (10.x line) or 11.5.3 (11.x line), as documented in GitHub Security Advisory GHSA-gj8w-mvpf-x27x (https://github.com/pnpm/pnpm/security/advisories/GHSA-gj8w-mvpf-x27x); pin the patched version in CI runner images and developer toolchains. Until upgraded, the practical compensating control is to avoid running pnpm install on untrusted or unreviewed repositories and to audit pnpm-workspace.yaml for any configDependencies entry referencing pacquet or @pnpm/pacquet before installing - removing or rejecting such entries prevents the install-engine opt-in, with the trade-off that legitimate pacquet engine usage would be blocked. Running installs in sandboxed/ephemeral CI containers with no persistent credentials limits blast radius if the binary is spawned, though it does not prevent code execution within that sandbox.

Affected VersionsENISA

pnpm < 10.34.2
pnpm 11.0.0, < 11.5.3

Affected Packages

npm pnpm fix: 10.34.2, 11.5.3

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 widely used JavaScript/Node.js package manager that reads project configuration from pnpm-workspace.yaml, including a configDependencies mechanism intended to let a workspace opt into an alternate install engine (pacquet). The root cause is CWE-78 (OS Command Injection / argument-to-command flow): pnpm trusted a repository-controlled configDependency as an install-engine opt-in and, during install, resolved a native platform-specific binary path (node_modules/.pnpm-config/<packageName>, i.e. @pacquet/<platform>-<arch>/pacquet) and executed it directly. Because this resolution and spawn happened before normal command dispatch and lifecycle-script gating, simply running an install in a hostile repository was enough to execute attacker-supplied code. The CPE cpe:2.3:a:pnpm:pnpm:*:*:*:*:*:*:*:* confirms the pnpm package itself is the affected component.

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

Vendor (GitHub_M) PRIMARY HIGH
NVD 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 content is network-delivered (AV:N) and trivially triggered (AC:L) with no attacker privileges (PR:N), but requires the victim to run install (UI:R); arbitrary binary execution yields total C/I/A impact.

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 7.5 HIGH

Primary rating from Vendor (GitHub_M).

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
CVSS changed
Jun 30, 2026 - 19:07 NVD
7.5 (HIGH) 8.8 (HIGH)
Patch available
Jun 25, 2026 - 19:17 EUVD

DescriptionNVD

pnpm is a package manager. Prior to 10.34.2 and 11.5.3, pnpm can install configDependencies declared in pnpm-workspace.yaml before command dispatch. Before the patch, a repository could declare pacquet or @pnpm/pacquet as a config dependency and pnpm treated that repository-controlled dependency as an install-engine opt-in. During install, pnpm resolved a platform-specific @pacquet/<platform>-<arch>/pacquet binary from node_modules/.pnpm-config/<packageName> and spawned it as the developer or CI user. This vulnerability is fixed in 10.34.2 and 11.5.3.

Executive ViewAI

Why It Matters

pnpm versions before 10.34.2 and 11.5.3 enable arbitrary code execution on developer machines and CI/CD systems during routine package installation from malicious repositories. This supply chain attack vector directly threatens development infrastructure and source code integrity across the organization. Publicly available exploit code exists for this vulnerability.

Business Impact: High
Compensating Controls

Apply vendor patch to pnpm 10.34.2 or 11.5.3. Until patches are deployed: enforce dependency installation from trusted registries only, implement mandatory code review for new dependencies, and disable automatic dependency updates in CI/CD pipelines.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
High
Major JavaScript package manager used across many Node.js dev and CI environments
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor CIRCL GitHub VulDB

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

64
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

OS command injection occurs when an application passes unsanitized user input directly into system shell commands.

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-55698 HIGH POC
8.8 Jun 25

Arbitrary code execution in the pnpm package manager (versions prior to 10.34.2 and 11.5.3) lets a malicious repository

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-82393 HIGH POC
7.5 Aug 31

Scoped path traversal in pnpm allows arbitrary filesystem overwrites during package installation, defeating the --ignore

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

Vendor StatusVendor

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