CVE-2026-49860 Deno: WebSocket API sandbox bypass via missing post-DNS check

Medium 5.2 Published Updated

An attacker can bypass network restrictions in Deno by using a domain that resolves to a denied IP, requiring --deny-net configuration.

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-49860?

CVE-2026-49860 is a medium-severity server-side request forgery 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.8.1, when a WebSocket connection was opened, Deno checked the destination hostname against --deny-net rules but did not re-check the IP addresses that hostname resolved to. An attacker-controlled script could use a specially crafted domain name that passes the hostname check yet resolves to a denied IP, bypassing the network restriction entirely. This vulnerability is fixed in 2.8.1.

Weakness: CWE-918

Which versions are affected by CVE-2026-49860?

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

PackageAffectedFixed in
deno crates.ioAll versions2.8.1
deno crates.ioAll versions2.8.1

Products include Deno Deno.

How do I fix CVE-2026-49860?

Upgrade deno to 2.8.1 or later.

Upgrade, and send outbound requests through an allow-list that blocks internal addresses. More about Server-side request forgery.

Is CVE-2026-49860 being exploited?

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

Sources

Also known as GHSA-83pc-3rw9-qpwj, JLSEC-2026-1165.

Is CVE-2026-49860 in your software?

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

Check your SBOMs for free