Patch di sicurezza NGINX (Rift e CVE del 2026)
Nel 2026 NGINX ha corretto diversi lotti di falle: NGINX Rift (CVE-2026-42945) a maggio, CVE-2026-42533, con una proof of concept pubblica, e cinque CVE a ottobre, tra cui un request smuggling in HTTP/3 e una falsificazione di sessione TLS che aggira la verifica del certificato client. Per averle tutte serve la 1.31.7 o successiva (mainline) o la 1.30.6 o successiva (stabile).
Hai questa vulnerabilità? Aggiorniamo NGINX su server e container, rivediamo la configurazione che rende sfruttabili alcune di queste falle e verifichiamo che tutto venga servito come prima.
$ nginx -vnginx version: nginx/1.30.2# Stabile < 1.30.6: mancano le correzioni di ottobre$ nginx -V 2>&1 | grep -o with-http_v3_modulewith-http_v3_module# HTTP/3 compilato: controlla CVE-2026-95101$ grep -rnE 'request_filename|alias ' /etc/nginx//etc/nginx/sites-enabled/app.conf:14: alias /var/www/static/;# alias su un percorso pubblico: schema di CVE-2026-151761.31.7+ (mainline) · 1.30.6+ (stable) Tre lotti di falle in NGINX nel 2026, finora
Se hai aggiornato a maggio per Rift, ti mancano le correzioni successive. E se usi l’NGINX della tua distribuzione, il numero di versione può sembrare vecchio anche con il pacchetto corretto: conta l’avviso di sicurezza del fornitore.
NGINX Rift (CVE-2026-42945) è stato trovato a maggio dalla piattaforma di IA di DepthFirst in circa sei ore, e il bug risaliva alla versione 0.6.27, del 2008. Riguarda NGINX Open Source dalla 0.6.27 alla 1.30.0 ed è corretto nelle versioni 1.31.0 e 1.30.1. nginx.org lo classifica di gravità media; Cloud Security Alliance e Help Net Security lo trattano come critico (9.2). Secondo Help Net Security, VulnCheck ha visto tentativi di sfruttamento dal 16 maggio.
Poi è arrivato CVE-2026-42533, corretto nelle versioni 1.31.3 e 1.30.4, per cui DepthFirst ha pubblicato una proof of concept a catena completa. A ottobre, un altro lotto di cinque: CVE-2026-15176, CVE-2026-93479, CVE-2026-95101 (request smuggling in HTTP/3), CVE-2026-97629 (falsificazione di sessione TLS che aggira la verifica del certificato client) e CVE-2026-97205, tutti corretti nelle versioni 1.31.7 e 1.30.6.
Fonti: nginx.org security advisories · Cloud Security Alliance · Help Net Security
Versioni di NGINX corrette
Confronta la tua versione con questa tabella. Vale per NGINX Open Source scaricato da nginx.org o compilato da te; per i pacchetti di distribuzione, consulta l’avviso del fornitore per ogni CVE.
| Se hai | Aggiorna a | Cosa ti manca |
|---|---|---|
| 1.31.3 – 1.31.6 | 1.31.7+ | Il lotto di ottobre |
| 1.31.0 – 1.31.2 | 1.31.7+ | CVE-2026-42533 e il lotto di ottobre |
| 1.30.4 – 1.30.5 | 1.30.6+ | Il lotto di ottobre |
| 1.30.1 – 1.30.3 | 1.30.6+ | CVE-2026-42533 e il lotto di ottobre |
| 0.6.27 – 1.30.0 | 1.30.6+ o 1.31.7+ | Rift e tutto ciò che è venuto dopo |
Controlla questo
-
nginx -vrestituisce una versione precedente a 1.31.7 (mainline) o 1.30.6 (stabile). - Hai HTTP/3 attivo: ti riguarda il request smuggling di CVE-2026-95101.
- Richiedi il certificato client (
ssl_verify_client): CVE-2026-97629 permette di aggirare quella verifica. - La tua configurazione usa
$request_filenameoalias(CVE-2026-15176), o espressioni regolari con catture senza nome (CVE-2026-93479). - NGINX gira dentro immagini Docker o come ingress di Kubernetes: ogni immagine si aggiorna separatamente.
Modifiche alla configurazione mentre aggiorni
nginx.org suggerisce modifiche alla configurazione per alcune falle di ottobre. Riducono l’esposizione a quei CVE specifici; per Rift e gli altri, la correzione è l’aggiornamento.
- 01 CVE-2026-15176: evita
$request_filenameealiasnellelocationesposte. - 02 CVE-2026-93479: usa catture con nome, come
(?<percorso>.+), invece di catture senza nome ($1,$2). - 03 Verifica in ogni blocco
serverse usi davvero HTTP/3 e i certificati client: sono le funzioni colpite da CVE-2026-95101 e CVE-2026-97629. - 04 Prima di ricaricare,
nginx -t. Un errore di sintassi in produzione butta giù più servizi della falla che stai correggendo.
Sette passi, in questo ordine
Applichiamo la stessa procedura su ogni server: prima capire quale versione gira dove, poi correggere e infine verificare che nessuno sia entrato prima della patch.
Inventario delle versioni
Elenchiamo ogni NGINX: server, bilanciatori, container e ingress, con la versione, i moduli compilati (nginx -V) e la provenienza del pacchetto: nginx.org, distribuzione o immagine Docker.
Mitigazione immediata
Cerchiamo $request_filename, alias e catture senza nome nella configurazione e li sostituiamo dove possibile senza cambiare ciò che il sito serve.
Aggiornamento
Passiamo a 1.31.7+ o 1.30.6+, o al pacchetto corretto della tua distribuzione, e ricostruiamo le immagini che includono NGINX.
Verifica
Eseguiamo nginx -t, ricarichiamo e controlliamo redirect, certificati, HTTP/2 e HTTP/3 e i percorsi che servono file statici.
Analisi degli indicatori di compromissione
Esaminiamo i log di accesso e di errore cercando richieste anomale, a partire da maggio se il server era su una versione colpita da Rift.
Rotazione dei segreti, se serve
Se ci sono segni di intrusione, rinnoviamo certificati e chiavi private TLS e le credenziali che passano dal proxy.
Monitoraggio dei nuovi avvisi
Annotiamo versione e provenienza di ogni NGINX, così il prossimo lotto di avvisi di nginx.org parte da quell’inventario.
Cosa lascia fuori una patch solo per Rift
Hai diversi NGINX e non sai quale versione ha ciascuno?
Consulenza gratuita →Domande frequenti sui CVE di NGINX del 2026
Cos’è NGINX Rift?
Ho già aggiornato per Rift, sono coperto?
La mia distribuzione ha una versione più vecchia, sono vulnerabile?
Posso proteggermi cambiando solo la configurazione?
Raccontaci dove gira il tuo NGINX
Partiamo dall’inventario: versione, provenienza del pacchetto e moduli di ogni NGINX, e quale configurazione va cambiata prima di aggiornare.
Raccontaci la tua sfida. Ti proponiamo la soluzione.
Senza impegno. In meno di 24 ore riceverai una proposta con ambito, tempistiche e budget. Nessuna clausola nascosta.