CVE-2026-24131
Medium · 5.5pnpm has Path Traversal via arbitrary file permission modification
CVSS
5.5
EPSS
0.3%
Published
Jan 26, 2026
CISA due date
—
The record
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. **Note:** Only affects Unix/Linux/macOS. Windows is not affected (`fixBin` gated by `EXECUTABLE_SHEBANG_SUPPORTED`).
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| npm | pnpm | 0 | 10.28.2 |
Related vulnerabilities
- GHSA-v253-rj99-jwpq pnpm has Path Traversal via arbitrary file permission modification Same vulnerability
- GHSA-6pfh-p556-v868 pnpm: Binary ZIP extraction allows arbitrary file write via path traversal (Zip Slip) Also affects pnpm
- GHSA-6x96-7vc8-cm3p pnpm has Windows-specific tarball Path Traversal Also affects pnpm
- GHSA-xpqm-wm3m-f34h pnpm scoped bin name Path Traversal allows arbitrary file creation outside… Also affects pnpm
- GHSA-m733-5w8f-5ggw pnpm has symlink traversal in file:/git dependencies Also affects pnpm
- CVE-2026-24056 pnpm has symlink traversal in file:/git dependencies Also affects pnpm
- CVE-2026-23890 pnpm scoped bin name Path Traversal allows arbitrary file creation outside… Also affects pnpm
- CVE-2026-23888 pnpm: Binary ZIP extraction allows arbitrary file write via path traversal (Zip Slip) Also affects pnpm