Nuova vulnerabilità nel modulo rewrite di nginx

Poco dopo la scoperta di 18 anni un potenziale RCE è stata scoperta un'altra vulnerabilità, CVE-2026-9256, questa volta esistita anche più a lungo — 21 anni, a partire dalla versione 0.1.17, rilasciata all'inizio del 2005.
Per sfruttare la vulnerabilità è necessaria la presenza nella configurazione del server della direttiva rewrite, che ha:

  • parametri di espressione regolare sovrapposti nel primo argomento,
  • nel secondo è utilizzato due o più di essi, ma non sono usate variabili,
  • inoltre è specificato il tipo 'redirect' o i parametri nel secondo argomento si trovano dopo il punto interrogativo.

Esempi:
rewrite ^/((.*))$ http://127.0.0.1:8080/$1$2 redirect;
rewrite ^/((.*))$ http://127.0.0.1:8080/?$1$2;

Entrambi otterranno un overflow del buffer quando elaborano la richiesta '/++++++++++++++++++++++++++++++'.

Come nella vulnerabilità precedente, in questo caso la lunghezza stimata del buffer potrebbe non coincidere con la reale quantità di dati scritti in esso — nel calcolo della lunghezza non è stato sempre considerato il possibile escaping.

Le informazioni sopra possono portare a un crash del flusso di lavoro di nginx, e in assenza di ALSR, a RCE. Come attenuante, si può notare una minore probabilità di trovare costrutti vulnerabili nella configurazione rispetto all'ultima volta.

L'errore è stato corretto nelle versioni 1.30.2 e 1.31.1 (commit della correzione).

Fonte: linux.org.ru

Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS 🔥 Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS | ProHoster