Next.js è un noto framework React per lo sviluppo di applicazioni web full-stack, ampiamente adottato per le sue funzionalità di rendering lato server e generazione di siti statici. Il middleware in Next.js consente agli sviluppatori di eseguire codice prima del completamento di una richiesta, abilitando funzionalità come autenticazione e autorizzazione. È stata identificata una vulnerabilità critica di sicurezza nelle versioni di Next.js precedenti a 14.2.25 e 15.2.3, che potrebbe permettere ad attaccanti di bypassare i controlli di autorizzazione implementati nel middleware, consentendo potenzialmente l’accesso non autorizzato a risorse sensibili.
| Next.js |
| 2025-03-24 11:03:35 |
| Fix Available |
Riassunto tecnico
La vulnerabilità, identificata come CVE-2025-29927, deriva da una gestione non corretta dell’header interno x-middleware-subrequest. Next.js utilizza questo header per prevenire che richieste ricorsive inneschino loop infiniti. Tuttavia, un attaccante può sfruttare questo meccanismo creando richieste che includono l’header x-middleware-subrequest, saltando di fatto l’esecuzione del middleware. Questo bypass può portare ad accessi non autorizzati a rotte e risorse protette all’interno di un’applicazione Next.js.
Raccomandazioni
Per mitigare i rischi associati a CVE-2025-29927, è essenziale adottare le seguenti misure:
- Aggiornare Next.js: Aggiorna la tua applicazione Next.js alle versioni corrette:
- Per Next.js
15.x, aggiornare alla versione15.2.3. - Per Next.js
14.x, aggiornare alla versione14.2.25. - Per Next.js
13.x, aggiornare alla versione13.5.9. - Per Next.js
12.x, aggiornare alla versione12.3.5.
-
Implementare il Filtro delle Richieste: Se non è possibile effettuare subito l’aggiornamento, configura l’applicazione o il reverse proxy per bloccare le richieste esterne contenenti l’header
x-middleware-subrequest. Questa misura può prevenire tentativi di bypass del middleware non autorizzati. -
Distribuire Regole WAF: Utilizza soluzioni di Web Application Firewall (WAF) per rilevare e bloccare le richieste che cercano di sfruttare questa vulnerabilità. Ad esempio, Cloudflare ha pubblicato una regola WAF gestita per proteggere da
CVE-2025-29927. -
Revisionare la Logica di Autorizzazione: Assicurati che i controlli di autorizzazione critici non si basino esclusivamente sul middleware. Implementa controlli ridondanti a livello di route o controller per aumentare la sicurezza.
-
Monitorare e Auditare i Log: Analizza regolarmente i log del server alla ricerca di pattern di accesso insoliti o tentativi di accesso non autorizzato, in particolare quelli che coinvolgono l’header
x-middleware-subrequest.