Repository navigation
Conversation
| return; | ||
| } | ||
|
|
||
| const tunnelResponse = handleTunnelRequestIfMatched(toWebRequest(event)); |
There was a problem hiding this comment.
🟠 High severity and reachable issue identified in your code:
Line 16 has a potentially vulnerable usage of h3, possibly introducing a high severity vulnerability.
ℹ️ Why this is reachable
A reachable issue is a possible security risk because your project actually executes the vulnerable code. This issue is reachable because your code calls vulnerable code in this version of h3.
Affected versions of h3 are vulnerable to Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling'). The readRawBody function in h3 performs a strict, case-sensitive check for "chunked" in the Transfer-Encoding header. If an attacker sends a mixed-case value (e.g. "Transfer-Encoding: ChuNked") and no Content-Length, h3 will assume an empty body, immediately process the request, and leave the real payload data on the socket. When h3 is deployed behind a Layer 4 proxy (such as AWS NLB or raw TCP proxies that don't normalize headers), this enables a classic TE.TE HTTP request smuggling attack—allowing an attacker to bypass WAFs or desynchronize and poison other users' connections.
References: https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-2737, GHSA, CVE
To resolve this comment:
Upgrade this dependency to at least version 1.15.5 at yarn.lock.
💬 Ignore this finding
To ignore this, reply with:
/fp <comment>for false positive/ar <comment>for acceptable risk/other <comment>for all other reasons
You can view more details on this finding in the Semgrep AppSec Platform here.
There was a problem hiding this comment.
Something to do in an external PR.
7fe783d to
f1e1f59
Compare
size-limit report 📦
|
f1e1f59 to
ab2c887
Compare
9765090 to
9bad613
Compare
c1733f2 to
fdca10d
Compare
fdca10d to
f17f89e
Compare
f17f89e to
fadf52a
Compare
fadf52a to
e1a3c68
Compare
|
bugbot run |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit e1a3c68. Configure here.
e1a3c68 to
305aa01
Compare
3596b0a to
ec58ad6
Compare
ec58ad6 to
42c2c08
Compare
42c2c08 to
4e01dfe
Compare
4e01dfe to
00ae6ab
Compare
…iddleware On Nitro v3, Nuxt and `@sentry/nitro` put the tunnel check first in h3's middleware list, since Nitro runs the app's `server/middleware` before anything a module registers and has no public way to go first. On Nitro v2, Nuxt answers from the `request` hook.
00ae6ab to
530a56d
Compare
A Nitro app's own
server/middleware, like an auth check, ran before anything Sentry registered and would block tunnel requests, fixed by putting the tunnel check first in h3's middleware on Nitro v3 and answering from therequesthook on Nitro v2.The e2e tunnel variants for Nuxt 4, Nuxt 5 and Nitro 3 check that the tunnel answers while an auth middleware rejects every other POST.
closes #20254