CVE-2026-114139: bypass critico del middleware in Sentry per Next.js
CVE-2026-114139: vulnerabilità critica (CVSS 9.1) in @sentry/nextjs consente di bypassare il middleware con tunnelRoute. Cosa fare subito.
CVE-2026-114139: bypass critico del middleware in Sentry per Next.js
In breve
È stata rivelata pubblicamente una vulnerabilità critica, identificata come CVE-2026-114139, con un punteggio CVSS di 9.1 su 10 [1], pubblicata il 21 ottobre 2026 [1]. Riguarda Sentry-Javascript, l'insieme di SDK ufficiali di Sentry, in particolare l'integrazione di @sentry/nextjs quando un'applicazione Next.js utilizza la funzione "tunnel" per segnalare gli errori ed è costruita con webpack [1]. In questo scenario, una richiesta non autenticata può arrivare a bypassare il middleware dell'applicazione e accedere a rotte che dovrebbe proteggere [1]. Se la tua azienda ha applicazioni Next.js con Sentry configurato, la priorità oggi è verificare la versione installata di @sentry/nextjs e aggiornare a una versione corretta quanto prima.
Cos'è e perché è importante
Molte applicazioni Next.js integrano Sentry per monitorare gli errori in produzione. Per evitare che i blocca-pubblicità o le estensioni del browser interrompano questo traffico, Sentry offre una funzione chiamata "tunnel", che reindirizza i report di errore attraverso il dominio stesso dell'applicazione mediante una rotta configurabile (tunnelRoute) [1].
Il problema sta nel modo in cui l'integrazione webpack di @sentry/nextjs implementa questo meccanismo nelle versioni affette: il rewriter del tunnel dovrebbe servire la rotta esatta del tunnel solo quando arrivano i parametri validi "o" e "p", ma il middleware dell'applicazione viene omesso per qualsiasi rotta situata sotto la tunnelRoute configurata [1]. Se una rotta propria dell'applicazione coincide con quella rotta di tunnel, o se un segmento dinamico nella radice del sito si risolve al di sotto di essa, una richiesta non autenticata può raggiungere quella rotta senza passare dal controllo di autorizzazione del middleware [1]. L'exploit richiede quindi di avere tunnelRoute configurato, una build con webpack, una rotta che collida con il tunnel e che il middleware sia l'unico controllo di autorizzazione di quella rotta [1].
Il radar di intelligence di OCIRIA riassume il rischio in modo diretto: questa vulnerabilità "permette di eludere il middleware di sicurezza in @sentry/nextjs quando si utilizza la rotta Tunnel" e, per questo, "riguarda applicazioni Next.js che usano Sentry per il monitoraggio, permettendo di omettere controlli di sicurezza critici" [2]. OCIRIA la classifica nella categoria di escalation dei privilegi [2], in linea con la gravità critica assegnata anche da NVD [1].
A chi riguarda
Riguarda le applicazioni Next.js che usano il pacchetto @sentry/nextjs nelle versioni comprese tra 9.36.0 e, rispettivamente, 9.47.2, 10.75.2 e 11.0.0-rc.1 (versioni precedenti alle correzioni) [1]. Non tutte le installazioni di Sentry in Next.js sono esposte: secondo la descrizione ufficiale, è necessario avere configurata l'opzione tunnelRoute, compilare con webpack (non con altri bundler) ed esistere una rotta dell'applicazione che collida con quella rotta di tunnel, dipendendo unicamente dal middleware per la sua protezione [1]. I team di prodotto, sviluppo e sicurezza delle aziende che usano Next.js con Sentry per l'observability dovrebbero rivedere la propria configurazione, indipendentemente dalle dimensioni dell'organizzazione.
Come sapere se sei vulnerabile
1. Controlla il package.json o il lockfile del progetto e verifica la versione installata di @sentry/nextjs; confrontala con gli intervalli affetti indicati sopra [1].
2. Verifica se nella configurazione di Sentry hai definito una tunnelRoute e se il progetto viene costruito con webpack.
3. Identifica se qualche rotta della tua applicazione (inclusi segmenti dinamici nella radice) potrebbe coincidere con la rotta configurata come tunnel.
4. Verifica se l'autorizzazione di quelle rotte dipende esclusivamente dal middleware di Next.js, senza un controllo aggiuntivo nell'handler stesso o nel server.
5. Oltre a questa revisione interna, è opportuno verificare quale superficie della tua applicazione è visibile dall'esterno, per individuare rotte o endpoint esposti che non ti aspettavi.
Come proteggersi
- Aggiorna
@sentry/nextjsa una delle versioni corrette: 9.47.2, 10.75.2 o 11.0.0-rc.1, in base al ramo che utilizzi [1]. Lo stesso radar di OCIRIA raccomanda di "aggiornare @sentry/nextjs alla versione patchata immediatamente" [2]. - Non lasciare l'autorizzazione delle rotte sensibili esclusivamente nelle mani del middleware: aggiungi anche controlli di accesso all'interno dell'handler stesso o del componente server, come defense in depth.
- Verifica se hai davvero bisogno della funzione tunnel attiva in produzione; se non la utilizzi, disattivarla riduce la superficie di questo problema.
- Controlla i log di accesso cercando richieste inusuali verso rotte che coincidano con la tua tunnelRoute configurata.
- Includi questa verifica nel ciclo abituale di aggiornamento delle dipendenze, non solo come attività occasionale.
Domande frequenti
Cos'è esattamente "tunnelRoute"? È un'opzione di configurazione di Sentry per Next.js che reindirizza i report di errore attraverso una rotta propria del tuo dominio, invece di inviarli direttamente ai server di Sentry [1].
Sono interessato se uso Sentry in Next.js ma non ho configurato tunnelRoute? Secondo la descrizione ufficiale, l'exploit richiede di avere tunnelRoute configurato e di compilare con webpack, oltre a una rotta che collida con essa [1]. Se non soddisfi queste condizioni, lo scenario descritto non si applica direttamente, anche se resta comunque consigliabile aggiornare.
È urgente aggiornare? Il bug ha un punteggio CVSS di 9.1, classificato come critico da NVD [1], e permette a un attaccante non autenticato di accedere a rotte protette. Data questa combinazione, è opportuno trattarlo come prioritario.
Cosa aggiunge il radar di OCIRIA su questo caso? Il nostro radar colloca questa vulnerabilità nella categoria di escalation dei privilegi e concorda sul fatto che il rischio principale sia l'omissione di controlli di sicurezza critici nelle applicazioni Next.js che usano Sentry per il monitoraggio [2].
Fonti
- [1] https://nvd.nist.gov/vuln/detail/CVE-2026-114139
- [2] https://github.com/advisories/GHSA-mchm-gjx6-7h55