
Questo è uno strumento di rilevamento statico per CVE-2026-42945, rivolto alla difesa e all'analisi della rete interna, per controllare se le configurazioni relative al modulo NGINX ngx_http_rewrite_module contengono combinazioni rewrite ad alto rischio.
Questo è uno strumento di rilevamento statico per CVE-2026-42945, pensato per difensori e controlli interni di rete. Verifica se le configurazioni NGINX relative al modulo ngx_http_rewrite_module contengono combinazioni di riscrittura ad alto rischio.
Questo progetto non fornisce codice di sfruttamento della vulnerabilità, non invia richieste HTTP dannose e non tenta di causare crash o esecuzione di codice remoto. Si limita a leggere i file di configurazione NGINX locali, aiutando i team di sicurezza a decidere se sia necessario aggiornare o correggere la configurazione.
CVE-2026-42945 è una vulnerabilità di overflow del buffer heap in ngx_http_rewrite_module in NGINX Open Source e NGINX Plus.
Gli scenari di rischio descritti negli annunci pubblici includono all'incirca:
rewrite;rewrite, if o set;$1, $2;?.Le versioni corrette di NGINX Open Source includono 1.30.1, 1.31.0 e successive. Per NGINX Plus, fare riferimento alla versione corretta indicata nell'annuncio del fornitore.
Link di riferimento:
Richiede solo Python 3, nessuna dipendenza di terze parti.
python3 --version
Si consiglia innanzitutto di esportare la configurazione completa renderizzata di NGINX:
nginx -T > nginx-rendered.conf
python3 cve_2026_42945_checker.py nginx-rendered.conf
È anche possibile scansionare direttamente una directory di configurazione:
python3 cve_2026_42945_checker.py /etc/nginx
Output JSON:
python3 cve_2026_42945_checker.py --json nginx-rendered.conf
Se l'esportazione della configurazione non include le informazioni sulla versione di NGINX, è possibile specificare manualmente la versione per un'analisi ausiliaria:
python3 cve_2026_42945_checker.py --json --nginx-version 1.30.0 nginx-rendered.conf
Output SARIF, utile per l'importazione in GitHub code scanning o in piattaforme di sicurezza interne:
python3 cve_2026_42945_checker.py --sarif nginx-rendered.conf > cve-2026-42945.sarif
0: nessun modello di configurazione ad alto rischio rilevato;1: almeno un modello di configurazione ad alto rischio rilevato;2: errore nella lettura del file o del percorso di input.I campi principali nei risultati del rilevamento includono:
versions: versioni di NGINX identificate dalla configurazione o dai parametri e il relativo giudizio;findings: posizione, motivo e prova della configurazione a rischio rilevata;summary: numero di file scansionati, numero di rilevamenti e livello di rischio massimo.Esempi di risultati di rischio evidenziano prove come:
rewrite ... ?$1; -> set ... $1;
Ciò indica che la forma della configurazione è simile alle condizioni di rischio descritte nell'annuncio pubblico e richiede una revisione prioritaria.
Aggiornare NGINX alla versione corretta:
1.30.1, 1.31.0 o successive;Si consiglia inoltre di rivedere le regole di riscrittura:
$1, $2;nginx -T prima della pubblicazione.Questo strumento è un rilevatore di configurazioni statiche, non un validatore completo di vulnerabilità. Potrebbe non coprire:
Utilizzatelo come strumento ausiliario per la verifica interna e l'audit delle configurazioni, non come unico criterio di valutazione della vulnerabilità.
Eseguire i test:
python -m pytest
Il repository include già un flusso di lavoro GitHub Actions che esegue automaticamente i test su push e pull request.