CVE-2026-44594 esm.sh: Path Traversal via package.json browser field allows reading arbitrary server files
Attackers can read arbitrary server files by publishing a malicious npm package with a crafted browser field in package.json.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-44594?
CVE-2026-44594 is a high-severity path traversal vulnerability in esm-dev esm.sh, published on 28 May 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
esm.sh is a no-build content delivery network (CDN) for web development. In 137 and earlier, a Local File Inclusion (LFI) vulnerability exists in the esbuild plugin's handling of the browser field in package.json. An attacker can publish an npm package that causes the server to read and return arbitrary files from the host filesystem during the build process.
Weakness: CWE-22
Which versions are affected by CVE-2026-44594?
3 open source packages ship an affected version, including github.com/esm-dev/esm.sh.
| Package | Affected | Fixed in |
|---|---|---|
github.com/esm-dev/esm.sh Go | All versions | 0.0.0-20250616164159-0593516c4cfa |
github.com/esm-dev/esm.sh Go | All versions | 0.0.0-20250616164159-0593516c4cfa |
github.com/esm-dev/esm.sh Go | All versions | 0.0.0-20250616164159-0593516c4cfa |
How do I fix CVE-2026-44594?
Upgrade github.com/esm-dev/esm.sh to 0.0.0-20250616164159-0593516c4cfa or later.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2026-44594 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-44594 exists.
Sources
Also known as GHSA-rg65-45m7-hq57, GO-2026-5620.