Insufficiently Protected Credentials Affecting pnpm package, versions <10.34.0>=11.0.0 <11.4.0


Severity

Recommended
0.0
medium
0
10

CVSS assessment by Snyk's Security Team. Learn more

Threat Intelligence

Exploit Maturity
Proof of Concept
EPSS
0.31% (23rd percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-JS-PNPM-17668474
  • published29 Jun 2026
  • disclosed26 Jun 2026
  • creditJUNYI LIU

Introduced: 26 Jun 2026

NewCVE-2026-50017  (opens in a new tab)
CWE-200  (opens in a new tab)
CWE-522  (opens in a new tab)

How to fix?

Upgrade pnpm to version 10.34.0, 11.4.0 or higher.

Overview

pnpm is a Fast, disk space efficient package manager

Affected versions of this package are vulnerable to Insufficiently Protected Credentials in the config and auth-header flow, which binds unscoped user-level npm _authToken credentials to whatever default registry a repository-local .npmrc selects. An attacker can capture a developer's or CI job's user-level npm token by publishing a repository whose .npmrc sets registry= to an attacker-controlled endpoint, to which pnpm then sends the unscoped default credentials during pnpm install, pnpm view, or similar metadata commands. The target must have unscoped user-level credentials in their global npm configuration, the disclosure is limited to those default tokens while URL-scoped tokens for other registries are not exposed, and the leak occurs before any lifecycle scripts run so it does not require package code execution.

Workaround

This vulnerability can be avoided by storing npm credentials as URL-scoped tokens, such as //registry.npmjs.org/:_authToken=..., rather than an unscoped default _authToken, since registry-scoped credentials are not sent to a registry selected by a repository's .npmrc.

CVSS Base Scores

version 4.0
version 3.1