NGINX corregge falle che permettono di eseguire codice sui server senza fare il login
NGINX ha rilasciato il 14 ottobre le versioni 1.30.6 (stable) e 1.31.7 (mainline) con le correzioni per cinque vulnerabilità. Tre di queste sono errori di memoria che un attaccante può provocare con richieste HTTP costruite ad arte e senza effettuare il login. Nel caso peggiore significa eseguire codice sul server. F5, che sviluppa NGINX, assegna a queste tre falle 9,2 su 10 (critico) secondo CVSS 4.0. Ognuna però è raggiungibile solo con una configurazione particolare, quindi un server con NGINX non è esposto in automatico. F5 dichiara di non conoscere né exploit pubblici né attacchi.
Cosa è stato corretto
I tre bug gravi dipendono da direttive molto comuni nelle configurazioni reali:
| CVE | Quando il server è esposto | Punteggio F5 (CVSS 4.0) |
|---|---|---|
| CVE-2026-15176 | Un blocco location usa alias insieme a rewrite, e $request_filename compare in set, return o in un formato di log | 9.2 |
| CVE-2026-93479 | Un map usa il confronto con espressioni regolari, e root o il formato dell'access log legge le sue catture senza nome ($1, $2) prima della variabile del map stesso | 9.2 |
| CVE-2026-97205 | L'I/O asincrono dei file (aio) è attivo e le pagine SSI usano include virtual | 9.2 |
| CVE-2026-97629 | ssl_session_cache shared:... è impostato senza ssl_session_ticket_key, quindi NGINX ruota da solo le chiavi dei ticket di sessione | 8.3 |
| CVE-2026-95101 | HTTP/3 è attivo insieme a proxy_request_buffering on | 6.9 |
Nei primi tre casi l'overflow manda in crash un processo worker di NGINX, che poi si riavvia. Richieste ripetute possono ripetere il crash all'infinito, perciò come minimo si tratta di un denial of service. L'esecuzione di codice, secondo F5, è possibile sui sistemi in cui la randomizzazione dello spazio degli indirizzi (ASLR) è disattivata o dove l'attaccante riesce ad aggirarla. Il bug di alias è nel codice dalla versione 0.1.29, uscita nel 2005.
Il problema dei ticket di sessione è di altro tipo. Una delle chiavi ruotate non era inizializzata e, secondo F5, un attaccante potrebbe falsificare una sessione TLS e usarla per superare i controlli sui certificati client. Conta per i server che ammettono gli utenti tramite certificato, come i pannelli di amministrazione e i servizi interni.
Critico o medio?
Le due valutazioni sembrano contraddirsi. Nella pagina degli avvisi di nginx.org tutti e cinque i bug sono segnati come "medium". Nei record CVE di F5 i tre errori di memoria ricevono 9,2 in CVSS 4.0 e 8,1 (alto) in CVSS 3.1. La differenza nasce dalle condizioni. Il vettore CVSS indica che l'attacco non richiede un account ma ha complessità alta, perché funziona solo su una configurazione corrispondente. Security Affairs ha scritto il 16 ottobre di undici problemi corretti. Il numero più alto comprende più di NGINX in sé: lo stesso giorno F5 ha distribuito aggiornamenti per prodotti correlati, tra cui il modulo di scripting njs, Ingress Controller e Gateway Fabric.
Come controllare il proprio server
NGINX sta davanti a molti servizi self-hosted su server in affitto, tra cui pannelli VPN e proxy, condivisioni di file e piccoli siti. Se ne gestite uno, per cominciare bastano due comandi. nginx -v mostra la versione, e nginx -T | grep -nE 'alias|request_filename|aio|ssi |ssl_session_cache|ssl_session_ticket|map ' elenca le direttive della tabella in tutta la configurazione caricata.
Il solo numero di versione può trarre in inganno. Debian e Ubuntu mantengono versioni più vecchie di NGINX e vi applicano le patch di sicurezza, quindi "1.22" o "1.26" su un server non dice se le correzioni di ottobre siano incluse. Il 17 ottobre il security tracker di Debian elencava ancora i pacchetti di bookworm e trixie come vulnerabili. Controllate il tracker della vostra distribuzione e aggiornate con apt update && apt upgrade appena compare un pacchetto corretto. Con i pacchetti ufficiali di nginx.org, le versioni corrette sono la 1.30.6 e la 1.31.7.
Finché non arriva la correzione, F5 consiglia di cambiare la configurazione: evitare alias e $request_filename nei blocchi interessati, usare catture con nome nel map al posto di $1 e $2, disattivare aio o smettere di servire pagine SSI, e caricare le chiavi dei ticket da un file con ssl_session_ticket_key oppure spegnere i ticket con ssl_session_tickets off. La nostra guida al hardening di un VPS copre il resto dell'igiene di base di un server.
• Changes with nginx 1.31.7 - nginx.org
• nginx security advisories - nginx.org
• CVE-2026-15176 - CVE.org
• CVE-2026-97629 - CVE.org
• F5 addressed critical RCE flaws in NGINX - Security Affairs
• F5 Patches Three NGINX Memory-Corruption Flaws Enabling RCE - Daily Security Review
• F5 security advisory (AV26-1049) - Canadian Centre for Cyber Security
• CVE-2026-15176 - Debian Security Tracker