esm.sh CDN service has arbitrary file write via tarslip
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub.
Summary
esm.sh is a nobuild content delivery network(CDN) for modern web development. Prior to version 136, the esm.sh CDN service is vulnerable to path traversal during NPM package tarball extraction. An attacker can craft a malicious NPM package containing specially crafted file paths (e.g., package/../../tmp/evil.js). When esm.sh downloads and extracts this package, files may be written to arbitrary locations on the server, escaping the intended extraction directory. This issue has been patched in version 136.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
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 |
|---|---|---|---|---|---|
| esm-dev | esm.sh | before 136 | 136 | Patch available | CNA |
| — | github.com/esm-dev/esm.sh (Go) | before 0.0.0-20251117232647-9d77b88c3207 | 0.0.0-20251117232647-9d77b88c3207 | Patch available | GHSA-h3mw-4f23-gwpw |
- esm.sh Vendoresm-dev Affected before 136 Fixed in 136 Patch available CNA
- github.com/esm-dev/esm.sh (Go) Vendor— Affected before 0.0.0-20251117232647-9d77b88c3207 Fixed in 0.0.0-20251117232647-9d77b88c3207 Patch available GHSA-h3mw-4f23-gwpw
Remediation
- Fix · CNA esm.sh (esm-dev) Fixed in 136
- Fix · GHSA-h3mw-4f23-gwpw github.com/esm-dev/esm.sh (Go) Fixed in 0.0.0-20251117232647-9d77b88c3207 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2025-65025
- 2026-10-03 Alias added: GHSA-h3mw-4f23-gwpw
References
More esm-dev Esm.sh vulnerabilities
- TI-2025-32063 esm.sh is vulnerable to full-response SSRF CVSS 4.0HIGH 8.7
- TI-2025-40212 esm.sh CDN service has JS Template Literal Injection in CSS-to-JavaScript CVSS 3.1CRITICAL 9.6
- TI-2026-22092 esm.sh has SSRF localhost/private-network bypass in `/http(s)` module route CVSS 3.1HIGH 7.5
- TI-2026-19038 esm.sh has path traversal in `extractPackageTarball` that enables file writes from malicious packages CVSS 4.0HIGH 7.7
Sources
- CVE-2025-65025 · CVE Program
- CVE-2025-65025 · NVD
- FIRST EPSS
- GHSA-h3mw-4f23-gwpw · 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