pnpm incorrectly parses tar archives relative to specification
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub. Impact type from CWE-284.
Summary
pnpm is a package manager. It is possible to construct a tarball that, when installed via npm or parsed by the registry is safe, but when installed via pnpm is malicious, due to how pnpm parses tar archives. This can result in a package that appears safe on the npm registry or when installed via npm being replaced with a compromised or malicious version when installed via pnpm. This issue has been patched in version(s) 7.33.4 and 8.6.8.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| pnpm | pnpm | before 7.33.4; 8.0.0 to before 8.6.8 | 7.33.4, 8.6.8 | Patch available | CNA |
| — | pnpm (npm) | before 7.33.4 | 7.33.4 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/exe (npm) | before 7.33.4 | 7.33.4 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/linux-arm64 (npm) | before 7.33.4 | 7.33.4 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/linux-x64 (npm) | before 7.33.4 | 7.33.4 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/linuxstatic-arm64 (npm) | before 7.33.4 | 7.33.4 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/macos-arm64 (npm) | before 7.33.4 | 7.33.4 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/macos-x64 (npm) | before 7.33.4 | 7.33.4 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/win-x64 (npm) | before 7.33.4 | 7.33.4 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/cafs (npm) | before 7.0.5 | 7.0.5 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | pnpm (npm) | 8.0.0 to before 8.6.8 | 8.6.8 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/exe (npm) | 8.0.0 to before 8.6.8 | 8.6.8 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/linux-arm64 (npm) | 8.0.0 to before 8.6.8 | 8.6.8 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/linux-x64 (npm) | 8.0.0 to before 8.6.8 | 8.6.8 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/linuxstatic-arm64 (npm) | 8.0.0 to before 8.6.8 | 8.6.8 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/macos-arm64 (npm) | 8.0.0 to before 8.6.8 | 8.6.8 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/macos-x64 (npm) | 8.0.0 to before 8.6.8 | 8.6.8 | Patch available | GHSA-5r98-f33j-g8h7 |
| — | @pnpm/win-x64 (npm) | 8.0.0 to before 8.6.8 | 8.6.8 | Patch available | GHSA-5r98-f33j-g8h7 |
- pnpm Vendorpnpm Affected before 7.33.4; 8.0.0 to before 8.6.8 Fixed in 7.33.4, 8.6.8 Patch available CNA
- pnpm (npm) Vendor— Affected before 7.33.4 Fixed in 7.33.4 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/exe (npm) Vendor— Affected before 7.33.4 Fixed in 7.33.4 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/linux-arm64 (npm) Vendor— Affected before 7.33.4 Fixed in 7.33.4 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/linux-x64 (npm) Vendor— Affected before 7.33.4 Fixed in 7.33.4 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/linuxstatic-arm64 (npm) Vendor— Affected before 7.33.4 Fixed in 7.33.4 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/macos-arm64 (npm) Vendor— Affected before 7.33.4 Fixed in 7.33.4 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/macos-x64 (npm) Vendor— Affected before 7.33.4 Fixed in 7.33.4 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/win-x64 (npm) Vendor— Affected before 7.33.4 Fixed in 7.33.4 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/cafs (npm) Vendor— Affected before 7.0.5 Fixed in 7.0.5 Patch available GHSA-5r98-f33j-g8h7
- pnpm (npm) Vendor— Affected 8.0.0 to before 8.6.8 Fixed in 8.6.8 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/exe (npm) Vendor— Affected 8.0.0 to before 8.6.8 Fixed in 8.6.8 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/linux-arm64 (npm) Vendor— Affected 8.0.0 to before 8.6.8 Fixed in 8.6.8 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/linux-x64 (npm) Vendor— Affected 8.0.0 to before 8.6.8 Fixed in 8.6.8 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/linuxstatic-arm64 (npm) Vendor— Affected 8.0.0 to before 8.6.8 Fixed in 8.6.8 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/macos-arm64 (npm) Vendor— Affected 8.0.0 to before 8.6.8 Fixed in 8.6.8 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/macos-x64 (npm) Vendor— Affected 8.0.0 to before 8.6.8 Fixed in 8.6.8 Patch available GHSA-5r98-f33j-g8h7
- @pnpm/win-x64 (npm) Vendor— Affected 8.0.0 to before 8.6.8 Fixed in 8.6.8 Patch available GHSA-5r98-f33j-g8h7
Remediation
- Fix · CNA pnpm (pnpm) Fixed in 7.33.4, 8.6.8
- Fix · GHSA-5r98-f33j-g8h7 pnpm (npm) Fixed in 7.33.4 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/exe (npm) Fixed in 7.33.4 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/linux-arm64 (npm) Fixed in 7.33.4 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/linux-x64 (npm) Fixed in 7.33.4 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/linuxstatic-arm64 (npm) Fixed in 7.33.4 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/macos-arm64 (npm) Fixed in 7.33.4 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/macos-x64 (npm) Fixed in 7.33.4 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/win-x64 (npm) Fixed in 7.33.4 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/cafs (npm) Fixed in 7.0.5 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 pnpm (npm) Fixed in 8.6.8 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/exe (npm) Fixed in 8.6.8 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/linux-arm64 (npm) Fixed in 8.6.8 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/linux-x64 (npm) Fixed in 8.6.8 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/linuxstatic-arm64 (npm) Fixed in 8.6.8 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/macos-arm64 (npm) Fixed in 8.6.8 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/macos-x64 (npm) Fixed in 8.6.8 Advisory →
- Fix · GHSA-5r98-f33j-g8h7 @pnpm/win-x64 (npm) Fixed in 8.6.8 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2023-37478
- 2026-10-03 Alias added: GHSA-5r98-f33j-g8h7
References
More Pnpm vulnerabilities
- TI-2025-42715 pnpm v10+ Bypass "Dependency lifecycle scripts execution disabled by default" CVSS 3.1CRITICAL 9.8
- TI-2026-40212 pnpm: Project env lockfile can short-circuit package-manager resolution and execute lockfile-selected pnpm bytes CVSS 3.1HIGH 8.8
- TI-2026-40211 pnpm: Repository-controlled configDependencies can select a pacquet native install engine CVSS 3.1HIGH 8.8
- TI-2026-40042 pnpm: manifest identity spoof satisfies allowBuilds and runs attacker lifecycle CVSS 3.1HIGH 8.8
- TI-2026-36842 pnpm: Transitive dependency alias path traversal allows project path override via symlink replacement CVSS 3.1HIGH 8.8
- TI-2025-42714 pnpm Lockfile Integrity Bypass Allows Remote Dynamic Dependencies CVSS 3.1HIGH 8.8
Sources
- CVE-2023-37478 · CVE Program
- CVE-2023-37478 · NVD
- FIRST EPSS
- GHSA-5r98-f33j-g8h7 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences