CVE-2026-24131
Unknown Unknown - Not Provided

BaseFortify

Vulnerability report for CVE-2026-24131, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-01-26

Last updated on: 2026-01-28

Assigner: GitHub, Inc.

Description

pnpm is a package manager. Prior to version 10.28.2, when pnpm processes a package's `directories.bin` field, it uses `path.join()` without validating the result stays within the package root. A malicious npm package can specify `"directories": {"bin": "../../../../tmp"}` to escape the package directory, causing pnpm to chmod 755 files at arbitrary locations. This issue only affects Unix/Linux/macOS. Windows is not affected (`fixBin` gated by `EXECUTABLE_SHEBANG_SUPPORTED`). Version 10.28.2 contains a patch.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-01-26
Last Modified
2026-01-28
Generated
2026-07-06
AI Q&A
2026-01-27
EPSS Evaluated
2026-07-05
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
pnpm pnpm to 10.28.2 (exc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-732 The product specifies permissions for a security-critical resource in a way that allows that resource to be read or modified by unintended actors.
CWE-22 The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability in pnpm occurs because it uses path.join() on the directories.bin field without validating that the resulting path stays within the package root. A malicious npm package can exploit this by specifying a bin directory path that escapes the package directory (e.g., "../../../../tmp"), causing pnpm to change permissions (chmod 755) on files at arbitrary locations outside the package. This affects Unix/Linux/macOS systems and was fixed in pnpm version 10.28.2.

Impact Analysis

This vulnerability can allow a malicious package to modify file permissions on arbitrary files outside its own directory, potentially leading to unauthorized execution of files or scripts. This could compromise system security by enabling privilege escalation or execution of malicious code on Unix/Linux/macOS systems.

Mitigation Strategies

Upgrade pnpm to version 10.28.2 or later, as this version contains a patch that fixes the vulnerability.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-24131. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart