CVE-2026-49406
Medium · 5.5CVSS
5.5
EPSS
0.2%
Published
Jun 23, 2026
CISA due date
—
The record
Deno is a JavaScript, TypeScript, and WebAssembly runtime. Prior to 2.7.12, when Deno was run in BYONM mode (nodeModulesDir: "manual"), the module resolver did not validate that a package's resolved entrypoint stayed within its node_modules/<pkg>/ directory. A malicious package.json whose main field contained .. segments was able to resolve to an arbitrary path on disk, and the resolver then read that file without consulting the --allow-read allowlist. This let a require("evil-pkg") call return the contents of a file that a direct Deno.readTextFileSync(...) call would have been blocked from reading. This vulnerability is fixed in 2.7.12.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| crates.io | deno | 0 | 2.7.12 |
Related vulnerabilities
- GHSA-968w-xfqw-vp9q Deno: BYONM module resolution allows `package.json` main path traversal to bypass… Same vulnerability
- CVE-2026-55517 Deno is a JavaScript, TypeScript, and WebAssembly runtime. Also affects deno
- CVE-2026-49860 Deno is a JavaScript, TypeScript, and WebAssembly runtime. Also affects deno
- CVE-2026-49983 Deno is a JavaScript, TypeScript, and WebAssembly runtime. Also affects deno
- CVE-2026-49401 Deno is a JavaScript, TypeScript, and WebAssembly runtime. Also affects deno
- CVE-2026-49411 Deno is a JavaScript, TypeScript, and WebAssembly runtime. Also affects deno
- CVE-2026-49402 Deno is a JavaScript, TypeScript, and WebAssembly runtime. Also affects deno
- CVE-2026-49440 Deno is a JavaScript, TypeScript, and WebAssembly runtime. Also affects deno