CVE-2026-49401 Deno Permission Bypass via Unicode Normalization Mismatch on macOS (APFS)

High 7.3 Published Updated

Attackers can bypass Deno's filesystem and execution permission restrictions on macOS by exploiting Unicode normalization mismatches in path comparisons.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2026-49401?

CVE-2026-49401 is a high-severity vulnerability in denoland deno, published on 23 Jun 2026. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

Deno is a JavaScript, TypeScript, and WebAssembly runtime. Prior to 2.7.14, Deno's permission system enforces filesystem and execution restrictions by comparing the requested path against the path supplied to --deny-read, --deny-write, --deny-run, or --deny-ffi. On macOS, that comparison was done at the raw-byte level while the APFS filesystem treats different Unicode spellings of the same name as the same file. That means a program could reach a denied path by spelling it differently than the deny rule. This vulnerability is fixed in 2.7.14.

Weakness: CWE-41, CWE-176

Which versions are affected by CVE-2026-49401?

2 open source packages ship an affected version, including deno. It affects 1 product.

PackageAffectedFixed in
deno crates.ioAll versions2.7.14
deno crates.ioAll versions2.7.14

Products include Deno Deno.

How do I fix CVE-2026-49401?

Upgrade deno to 2.7.14 or later.

Is CVE-2026-49401 being exploited?

There is no known exploitation of CVE-2026-49401 in the wild and no public exploit code.

Sources

Also known as GHSA-8xpq-cjcf-3wh9, JLSEC-2026-655.

Is CVE-2026-49401 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free