I ricercatori di DepthFirst AI hanno scoperto una vulnerabilità critica in NGINX, CVE-2026-42945 , con un punteggio CVSS di 9.2. Il problema interessa tutte le versioni di NGINX dalla 0.6.27 alla 1.30.0 ed è presente nel codice da circa 18 anni.
NGINX è uno dei server web e proxy inversi più diffusi al mondo. Viene utilizzato da provider di servizi cloud, aziende SaaS, banche, piattaforme di e-commerce e cluster Kubernetes. In sostanza, si tratta di una vulnerabilità nel software infrastrutturale che alimenta una parte significativa di Internet.
La vulnerabilità consiste in un heap buffer overflow del modulo ngx_http_rewrite_module. Il problema si verifica quando si utilizzano le direttive rewrite e set (questa configurazione si trova spesso nei gateway API e nei proxy inversi).
La radice del problema risiede in una gestione errata dello stato nel motore di scripting interno di NGINX. Il server calcola prima la dimensione del buffer per i dati e poi ne copia il contenuto.
Tuttavia, lo speciale flag `is_args` rimane attivo dopo l’elaborazione del carattere “?”, causando un errore di calcolo della dimensione della memoria da parte di NGINX. Di conseguenza, la quantità di dati scritti supera la dimensione del buffer allocato, portando a un overflow dell’heap.
Inoltre, i ricercatori hanno dimostrato una prova di concetto di un exploit che consente l’esecuzione di codice remoto senza autenticazione. Per fare ciò, hanno inviato richieste HTTP appositamente create che corrompevano le strutture di memoria di NGINX e costringevano il server a chiamare system() durante la pulizia del pool di memoria.
Tuttavia, gli esperti sottolineano che l’esecuzione completa di codice remoto è stata ottenuta solo su un sistema con la protezione ASLR disabilitata. Questa tecnologia è in genere abilitata per impostazione predefinita, ma a volte viene disabilitata per motivi di prestazioni.
Oltre a CVE-2026-42945, i ricercatori hanno scoperto altri tre bug di corruzione della memoria. Questi includono:
- CVE-2026-42946 – Una vulnerabilità nei moduli SCGI/UWSGI potrebbe causare l’allocazione di quasi 1 TB di memoria e provocare l’arresto anomalo del processo worker.
- CVE-2026-40701 – Uso di memoria dopo la sua liberazione (use-after-free) nell’elaborazione asincrona delle query DNS OCSP;
- CVE-2026-42934 – Bug di tipo “off-by-one” nel parser UTF-8.
Gli sviluppatori di F5 hanno già rilasciato delle patch. Le correzioni sono disponibili in NGINX Open Source 1.31.0 e 1.30.1, nonché in NGINX Plus R36 P4 e R32 P6. Il bollettino di sicurezza dell’azienda segnala inoltre che le vulnerabilità hanno interessato non solo NGINX stesso, ma anche prodotti correlati, tra cui NGINX Ingress Controller, NGINX App Protect WAF e F5 DoS per NGINX.
È importante notare che non tutti gli esperti concordano sul fatto che sfruttare questa vulnerabilità sia semplice.
Ad esempio, il noto ricercatore di sicurezza Kevin Beaumont scrive che il PoC pubblicato funziona solo con una specifica configurazione di NGINX e con ASLR disabilitato. Gli sviluppatori di AlmaLinux condividono una posizione simile : secondo loro, stabilire un’esecuzione di codice remoto stabile su sistemi sicuri “non è così semplice”.
Bajram Zeqiri è un esperto di cybersecurity, cyber threat intelligence e digital forensics con oltre vent'anni di esperienza, che unisce competenze tecniche, visione strategica creare la resilienza cyber per le PMI. Fondatore di ParagonSec e collaboratore tecnico per Red Hot Cyber, opera nella delivery e progettazione di diversi servizi cyber, SOC, MDR, Incident Response, Security Architecture, Engineering e Operatività. Aiuta le PMI a trasformare la cybersecurity da un costo a leva strategica per le PMI.
Aree di competenza: Cyber threat intelligence, Incident response, Digital forensics, Malware analysis, Security architecture, SOC/MDR operations, OSINT research