La scurt timp după descoperire, un RCE potențial de 18 ani a fost descoperit încă un alt, CVE-2026-9256, de data aceasta existând chiar mai mult timp – 21 de ani, începând din versiunea 0.1.17, lansată la începutul anului 2005.Pentru exploatarea vulnerabilității, este necesară prezența directivei rewrite în configurația serverului, care are:
un prim argument cu parametrii de expresie regulată suprapusi,
- în al doilea utilizând două sau mai multe dintre acestea, dar fără a folosi variabile,
- în acest caz, fie este specificat tipul „redirect”, fie parametrii din al doilea argument se află după semnul întrebării.
- rewrite ^\/((.*))$ http:\/\/127.0.0.1:8080\/$1$2 redirect;
Exemple:
rewrite ^\/((.*))$ http:\/\/127.0.0.1:8080\/?$1$2;
Ambele vor suferi de o suprascriere a bufferului la procesarea cererii „\/++++++++++++++++++++++++++++++”.
Ca și în vulnerabilitatea anterioară, în acest caz lungimea estimată a bufferului poate să nu corespundă cu numărul real de date scrise în acesta – în calculul lungimii nu a fost luată în considerare, în toate cazurile, posibilitatea de escapa.
Cele descrise mai sus pot duce la o întrerupere a procesului de lucru nginx, iar în absența ALSR – la RCE. Un factor de atenuare este o probabilitate și mai mică de a întâlni structuri vulnerabile în configurație, decât data trecută.
Eroarea a fost corectată în versiunile 1.30.2 și 1.31.1 (
comiterea corectăriiLa scurt timp după descoperirea unui RCE potențial de 18 ani a fost descoperit încă un alt,).
Sursa: linux.org.ru
