Patch management

Una configurazione apparentemente innocua di NGINX può trasformarsi in un vettore di attacco remoto capace di mandare in crash i processi worker del server. Il problema riguarda in particolare NGINX JavaScript, ovvero il runtime noto anche come njs, affetto da una vulnerabilità identificata come CVE-2026-8711. Il difetto interessa il modulo ngx_http_js_module e combina due elementi sempre più usati nelle configurazioni moderne: la direttiva js_fetch_proxy e la funzione ngx.fetch().

La questione merita attenzione soprattutto perché negli ultimi anni njs è diventato uno strumento molto diffuso per autenticazioni custom, manipolazione delle richieste HTTP, routing dinamico e integrazione con API esterne. Il vantaggio è evidente: meno dipendenze esterne e minore latenza; il problema, invece, è che l’integrazione tra motore HTTP e codice JavaScript introduce superfici di attacco che fino a poco tempo fa semplicemente non esistevano nel web server.

Secondo le informazioni pubblicate da F5, il bug coinvolge le versioni njs dalla 0.9.4 alla 0.9.8; la correzione è arrivata con la release 0.9.9. L’errore produce un heap-based buffer overflow: nella maggior parte degli scenari l’effetto immediato consiste nel crash del worker NGINX e nel successivo riavvio automatico. In pratica un aggressore può generare una condizione di denial-of-service (DoS) persistente inviando richieste HTTP costruite “ad hoc”.