Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Strumenti/GitHubGitHub/phinode-labs/nginx-cve-2026-97629
Analisi delle VulnerabilitàExploitSicurezza WebCrittografiaAutenticazionePaper e Ricerca
GitHubphinode-labs/nginx-cve-2026-97629

nginx-cve-2026-97629

Proof-of-concept di exploit, analisi della causa radice e patch di una riga per CVE-2026-97629, una falsificazione dei session-ticket TLS di nginx che aggira l'autenticazione tramite certificato client (mTLS).

Vedi RepositorySito web
15 giorni faNon ancora revisionato

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

CVE-2026-97629 — falsificazione dei session ticket TLS in nginx (bypass dell'autenticazione con certificato client)

Una riga di C. Una sessione TLS falsificata. Individuata, dimostrata end to end e coordinata fino alla correzione da PhiNode Labs.

CVE CVSS CWE-908 Fixed

Un exploit proof-of-concept, l'analisi della causa radice, la patch di una riga e le prove di riproduzione per CVE-2026-97629, una falsificazione dei session ticket TLS in nginx che può aggirare l'autenticazione con certificato client (mutual-TLS). Divulgata a F5 nell'ambito della divulgazione coordinata e attribuita a PhiNode Labs.

Leggi l'analisi completa: https://phinode.io/nginx-cve-2026-97629.html

"F5 ringrazia PhiNode Labs per averci segnalato questo problema e per aver seguito i più alti standard della divulgazione coordinata." — F5 Security Advisory K000162606

In sintesi

CVECVE-2026-97629
AdvisoryF5 K000162606 · GHSA-862p-pr69-37gq
GravitàCVSS 3.1 6.5 / CVSS 4.0 8.3 (F5). Fino a 10.0 nelle distribuzioni mutual-TLS
DebolezzaCWE-908 — uso di risorsa non inizializzata
Componentengx_http_ssl_module — ngx_ssl_rotate_ticket_keys()
Affettenginx 1.23.2 – 1.31.6, NGINX Plus fino a R37 (37.0.5) e prodotti F5 basati su nginx
Correttenginx 1.31.7 e 1.30.6, NGINX Plus 37.0.5.1 / 37.1.0.1
CreditoPhiNode Labs — [email protected]

Il bug

Per riprendere rapidamente le connessioni TLS, nginx sigilla un session ticket con una chiave a rotazione e mantiene tre di queste chiavi per worker: corrente, precedente, successiva. Durante la rotazione, ngx_ssl_rotate_ticket_keys() copiava solo due dei tre slot in ciascun worker; il terzo non veniva mai scritto dopo l'avvio. In una build Linux predefinita quella memoria è tutta a zero — lo stesso valore prevedibile in ogni worker di ogni distribuzione predefinita.

La callback di decifratura esamina tutti e tre gli slot. Un client può inviare un ticket falsificato il cui nome di chiave di 16 byte è tutto a zero, corrispondere allo slot terzo non toccato e far sì che nginx lo apra con chiavi AES e HMAC tutte a zero che chiunque può indovinare. Da qui un attaccante falsifica una sessione valida con chiavi di propria scelta e riprende una connessione cifrata senza completare un handshake reale. Dove un server si affida a un certificato client per decidere chi può entrare, quel controllo viene aggirato.

La correzione è un singolo carattere:

  ngx_memcpy(keys->elts, cache->ticket_keys,
-            2 * sizeof(ngx_ssl_ticket_key_t));
+            3 * sizeof(ngx_ssl_ticket_key_t));

Vedi patch/ per il diff pronto all'applicazione.

Perché è importante

nginx serve circa un terzo di tutti i siti web. L'impatto che F5 riconosce — il bypass della verifica del certificato client — colpisce più duramente il mutual TLS: open banking (PSD2 / FAPI), scambio di dati sanitari, funzioni del core network 5G, ingress di Kubernetes, zero-trust e flotte di dispositivi, dove un certificato rappresenta l'intera decisione di accesso. Su tali distribuzioni la contraffazione è un bypass completo dell'autenticazione client, la lettura di massima gravità.

Riprodurlo

Tutto è locale, su un listener di loopback con un certificato self-signed usa e getta. Vedi poc/ per l'exploit e evidence/ per l'output catturato: nginx che accetta la chiave tutta a zero, l'handshake abbreviato e una lettura/scrittura completa sulla sessione contraffatta (HTTP 404 decifrato).

cd poc
python3 make_forged_session.py   # patch the session_id_context
python3 forge_ticket.py          # -> VERDICT: TICKET ACCEPTED
python3 forge_ticket_full.py     # -> full read/write over the forged session

Mitigazione

  1. Aggiorna a nginx 1.30.6 / 1.31.7, NGINX Plus 37.0.5.1 / 37.1.0.1, o alla build corretta del tuo fornitore.
  2. In attesa dell'aggiornamento: ssl_session_tickets off;
  3. Oppure configura file ssl_session_ticket_key espliciti che ruoti tu stesso.

Un server è esposto solo se tutte le condizioni sono soddisfatte: una versione vulnerabile, una ssl_session_cache shared:…, i ticket attivi senza file di chiave, e certificati che determinano l'accesso.

Cronologia della divulgazione

DataEvento
Giu 2026PhiNode Labs identifica la discrepanza di slot e la dimostra end to end
Ago 2026Segnalato a F5 SIRT; inoltrato a NGINX Product Engineering
Set 2026NGINX PE la classifica come vulnerabilità
12 Ott 2026Assegnato CVE-2026-97629 (F5 NPS-179)
14 Ott 2026F5 pubblica K000162606; le correzioni arrivano in nginx 1.31.7 / 1.30.6

Divulgazione responsabile

Questa proof of concept è pubblicata dopo il rilascio della correzione e con il rilascio coordinato di F5, affinché i difensori possano verificare i propri server. Non usarla contro sistemi che non possiedi o non gestisci.

Informazioni su PhiNode Labs

PhiNode Labs è un laboratorio di ricerca applicata sull'analisi dei programmi. Troviamo i difetti che gli scanner e i modelli linguistici ignorano — nessuna stringa iniettata, nessuna funzione palesemente errata, solo una dimensione che sarebbe dovuta essere tre ed era due — ragionando su ciò che la memoria di un programma contiene effettivamente a runtime. Nessuna affermazione senza una prova.

  • Sito web: https://phinode.io
  • Ricerca e divulgazioni: https://phinode.io/research.html
  • Questo advisory, in versione integrale: https://phinode.io/nginx-cve-2026-97629.html
  • Contatto per la sicurezza: [email protected] (security.txt)

Parole chiave: CVE-2026-97629, nginx, TLS session ticket, session ticket forgery, session resumption, mutual TLS, mTLS, client certificate bypass, ngx_http_ssl_module, ngx_ssl_rotate_ticket_keys, F5, NGINX Plus, proof of concept, PoC, exploit, CWE-908, PhiNode Labs, program analysis.

Scarica lo strumento