CVE-2026-104380 Punk versions from 0.48 before 0.55 for Perl route Extended CONNECT requests to any GET route without an Origin check in ps_serve_one.

Medium 5.3 Published Updated

Cross-origin pages can probe any GET route via WebSocket handshakes to determine path existence, bypassing Origin checks in the Punk Perl library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
None listed

What is CVE-2026-104380?

CVE-2026-104380 is a medium-severity missing authorization vulnerability, published on 6 Oct 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Punk versions from 0.48 before 0.55 for Perl route Extended CONNECT requests to any GET route without an Origin check in ps_serve_one.

On HTTP/2 and HTTP/3 a WebSocket handshake arrives as an Extended CONNECT, which is matched as a GET and so reaches every GET route, API operation and mount. The Origin check runs only when a websocket route matches. On this transport the handler's status is the handshake response, and a 2xx accepts it.

A cross-origin page can open a WebSocket to any path and learn from its open or error event whether that path returns 2xx.

Weakness: CWE-1385

Which versions are affected by CVE-2026-104380?

How do I fix CVE-2026-104380?

No fix has been published for CVE-2026-104380 yet. Limit exposure of the affected software until one is available.

Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.

Is CVE-2026-104380 being exploited?

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

Sources

Also known as GHSA-cmh9-2wr3-4x64.

Is CVE-2026-104380 in your software?

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

Check your SBOMs for free