Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
NGINX_RIFT_SCAN_CVE_2026_42945 — Scansione CVE di riscrittura Nginx (CVE-2026-42945 nginx-rift CVE-2026-9256) | Kitploit
Strumenti/GitHubGitHub/friparia/nginx_rift_scan_cve_2026_42945
Analisi StaticaScanner di VulnerabilitàExploitAudit di ConfigurazioneSicurezza WebConfigurazione Errata
GitHubfriparia/nginx_rift_scan_cve_2026_42945

NGINX_RIFT_SCAN_CVE_2026_42945

Scansione CVE di riscrittura Nginx (CVE-2026-42945 nginx-rift CVE-2026-9256)

Vedi Repository
34953 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Scanner di configurazione NGINX Rift

Lingua: Italiano | English

Questo è uno script leggero per verificare se la configurazione di NGINX presenta modelli di rischio relativi a CVE-2026-42945 (NGINX Rift) e CVE-2026-9256.

La vulnerabilità è stata divulgata da depthfirst nell'articolo NGINX Rift: Achieving NGINX RCE via an 18-Year-Old Vulnerability. Secondo l'articolo e la descrizione F5/NVD, il rischio è legato a specifiche combinazioni di configurazione del modulo ngx_http_rewrite_module: nello stesso contesto di configurazione, la stringa di sostituzione di rewrite contiene ? e successive direttive rewrite, if o set fanno riferimento a variabili di cattura PCRE senza nome, come $1, $2.

Obiettivi della scansione

Questo strumento verifica principalmente se nel file di configurazione di NGINX sono presenti i seguenti modelli ad alto rischio.

CVE-2026-42945

Sequenza ad alto rischio simile a:

root@kitploit:~
location ~ ^/api/(.*)$ {
    rewrite ^/api/(.*)$ /internal?migrated=true;
    set $original_endpoint $1;
}

Il punto di rischio non è la singola direttiva rewrite o set, ma l'ordine di esecuzione delle stesse nello stesso contesto:

  1. rewrite utilizza catture regex e la stringa di sostituzione contiene ?
  2. Successive rewrite, if o set utilizzano variabili di cattura senza nome come $1, $2

Questa combinazione può causare una discrepanza tra il calcolo della lunghezza e la fase di copia effettiva nel motore di scripting di NGINX, portando a un overflow del buffer heap.

CVE-2026-9256

rewrite ad alto rischio simile a:

root@kitploit:~
location / {
    rewrite /wengine-auth-static/((.*)) /?$1$2 break;
}

Condizioni di rischio:

  1. L'espressione regolare contiene gruppi di cattura sovrapposti, ad esempio $1 include $2 in ^/((.*))$
  2. La stringa di sostituzione fa riferimento a più gruppi di cattura sovrapposti in un contesto di redirect o argomenti, ad esempio $1$2

Nota: break non esclude il rischio; finché più gruppi di cattura sovrapposti compaiono nella parte degli argomenti dopo ?, rimangono nel contesto degli argomenti. Un rewrite URI normale come /$1$2 break non rientra nelle condizioni di attivazione di questa CVE.

Lo script etichetta esplicitamente questo modello come CVE-2026-9256.

Ambito di impatto

L'articolo di depthfirst elenca i seguenti impatti:

  • NGINX Open Source da 0.6.27 a 1.30.1
  • NGINX Plus da R32 a R36
  • Alcuni prodotti F5/NGINX basati su NGINX

Per versioni di fix e matrici di prodotti aggiornate, consultare gli annunci ufficiali di F5 o i bollettini delle distribuzioni. Anche se la versione è all'interno dell'intervallo interessato, è solitamente necessaria una specifica sequenza di configurazione rewrite per attivare la vulnerabilità.

Lo script mostra contemporaneamente la versione corrente di NGINX e i risultati della scansione della configurazione:

  • Versione in 0.6.27 - 1.30.1 e configurazione che corrisponde a una sequenza a rischio: è necessario aggiornare NGINX o modificare la configurazione.
  • Versione in 0.6.27 - 1.30.1 ma configurazione che non corrisponde a una sequenza a rischio: si consiglia l'aggiornamento, ma non è stato rilevato alcun trigger nella configurazione.
  • Configurazione che corrisponde a una sequenza a rischio ma versione non compresa nell'intervallo interessato: si consiglia di riesaminare la configurazione e mantenere la versione aggiornata.

Utilizzo

Scansiona direttamente la configurazione completa di NGINX della macchina corrente:

root@kitploit:~
python3 scan_rift.py

Lo script esegue:

root@kitploit:~
nginx -T

Se l'utente corrente non ha i permessi per leggere la configurazione completa, utilizzare sudo:

root@kitploit:~
sudo python3 scan_rift.py

È anche possibile scansionare un file di configurazione già esportato:

root@kitploit:~
python3 scan_rift.py /path/to/nginx-full.conf

Ad esempio, esportare la configurazione prima di eseguire la scansione:

root@kitploit:~
sudo nginx -T > nginx-full.conf
python3 scan_rift.py nginx-full.conf

Descrizione dell'output

Quando non viene trovata alcuna sequenza a rischio:

root@kitploit:~
--- NGINX Rift Config Scanner (CVE-2026-42945 / CVE-2026-9256) ---
Current NGINX Version: nginx version: nginx/1.23.3
Version Status: Affected version range for NGINX Open Source (0.6.27 - 1.30.1)

[+] No vulnerable CVE-2026-42945 sequences or CVE-2026-9256 patterns detected.

[Recommendation]: Current NGINX version is in the affected range, but no vulnerable config pattern was detected. Upgrade is recommended, but config risk was not found by this scanner.

Quando viene trovata una sequenza sospetta:

root@kitploit:~
--- NGINX Rift Config Scanner (CVE-2026-42945 / CVE-2026-9256) ---
Current NGINX Version: nginx version: nginx/1.23.3
Version Status: Affected version range for NGINX Open Source (0.6.27 - 1.30.1)

[!] VULNERABLE SEQUENCE FOUND (CVE-2026-42945):
    Context: location ~ ^/api/(.*)$ {
    [1. Rewrite With ?] rewrite ^/api/(.*)$ /internal?migrated=true;
    [2. Follow-up $N]   set $original_endpoint $1;

[Action Required]: Current NGINX version is affected and vulnerable config was found. Upgrade NGINX or adjust the reported rewrite pattern.

Quando viene trovato un modello sospetto di CVE-2026-9256:

root@kitploit:~
--- NGINX Rift Config Scanner (CVE-2026-42945 / CVE-2026-9256) ---
Current NGINX Version: nginx version: nginx/1.23.3
Version Status: Affected version range for NGINX Open Source (0.6.27 - 1.30.1)

[!] VULNERABLE PATTERN FOUND (CVE-2026-9256):
    Context: location ^~ /wengine-auth-static/ {
    [Rewrite Overlapping Captures] rewrite /wengine-auth-static/((.*)) /?$1$2 break;
    [Context] arguments; overlapping refs: $1/$2

[Action Required]: Current NGINX version is affected and vulnerable config was found. Upgrade NGINX or adjust the reported rewrite pattern.

Dopo che viene trovata una corrispondenza, è necessario verificare manualmente se il contesto di configurazione riportato può essere raggiunto da richieste esterne e, se possibile, aggiornare NGINX o modificare la configurazione.

Raccomandazioni

  • Aggiornare alla versione corretta pubblicata dal fornitore.
  • Controllare tutte le combinazioni di rewrite / set nei contesti location, server, if, ecc.
  • Evitare di utilizzare variabili di cattura senza nome come $1, $2 dopo un rewrite con ?.
  • Evitare di concatenare più gruppi di cattura sovrapposti in redirect o argomenti, ad esempio ^/((.*))$ con ?$1$2.
  • Non considerare break come un modo per evitare CVE-2026-9256; /?$1$2 break rientra comunque nel modello.
  • Utilizzare catture nominate, salvare variabili in anticipo, suddividere la logica di elaborazione o rimuovere rewrite di query string non necessari.
  • Prima della correzione, dare priorità ai servizi NGINX accessibili pubblicamente e agli ingress di proxy inverso.
  • Non basarsi solo sul numero di versione; la presenza di sequenze di attivazione nella configurazione è altrettanto critica.

Limitazioni

Questo script è uno strumento di scansione statico della configurazione, progettato per individuare rapidamente modelli ad alto rischio, ma non equivale a una verifica dello sfruttamento della vulnerabilità.

  • Potrebbero esserci falsi positivi; è necessaria una revisione manuale nel contesto NGINX effettivo.
  • Direttive multilinea complesse, espansione include anomala o configurazioni generate dinamicamente possono influenzare la scansione.
  • L'assenza di rischi rilevati non significa sicurezza assoluta; è comunque consigliato aggiornare alla versione corretta ufficiale.

Riferimenti

  • depthfirst: https://depthfirst.com/research/nginx-rift-achieving-nginx-rce-via-an-18-year-old-vulnerability
  • NVD CVE-2026-42945: https://nvd.nist.gov/vuln/detail/CVE-2026-42945
  • Advisory F5 K000161019: https://my.f5.com/manage/s/article/K000161019
Scarica lo strumento