freenginxis ja nginxis on lisatud kontrolli tekstimuutuja suuruse ĂŒle enne, kui sinna andmeid kirjutada (+ CVE)


3

TL;DR: Seistud mĂ€ngus, kus avastati kolmas 2026. aasta puhverĂŒlevool (ja F5 hinnangul RCE, kui ASLR pole rakendatud) regexide ja muutujate töötlemisel, otsustas freenginx arendaja Maksim Dunin, et on aeg see lĂ”petada, ning lisas oma tootes kontrolli muutuja suuruse ĂŒle enne, kui sinna andmeid kirjutada. Sellest uuendusest varastati ka nginx, mis annab lootust, et uued CVE-d selle teema ĂŒmber lĂ”petatakse.

NĂŒĂŒd on detailid.

19. juunil tehti komiteed freenginxis, lisades muutuja descriptorisse endi vĂ€lja, mis nĂ€itab puhvri lĂ”ppu. Varem oli seal vaid alguse viit (pos), vajalik pikkus arvutati (ja arvutatakse endiselt) eelnevalt ning andmete kopeerimise ajaks eeldati, et Ă”igesti arvutatud pikkus tagab, et andmed mahuvad puhvri sisse. Kahjuks on see juba kaks korda 2026. aasta mais erinevate tĂ€helepanematuste tĂ”ttu nii olnud (1 (linux.org.ru), 2 (linux.org.ru)), mis viis puhverĂŒlevooludeni ja halva tagajĂ€rjeni. NĂŒĂŒd, kui muutuja puhver luuakse, tĂ€idetakse ka selle lĂ”ppu viit, ja enne andmete kirjutamist muutuja sisse, kui andmed ei mahu sinna, töötlus lĂ”petatakse kontrollitult veaga. See tĂ€hendab, et pikkuse arvutamise vead vĂ”ivad endiselt esineda, kuid nĂŒĂŒd ei purusta nad mĂ€lu, vaid lihtsalt ebaĂ”nnestuvad konkreetse http-pĂ€ringu osas. JĂ€rgmised kohandused (2 (freenginx.org), 3 (freenginx.org)) lisasid sarnase kaitse koodis teistesse kohtadesse, sealhulgas pÀÀsulogide haldamise koodi. 7. juulil avaldati versioon freenginx 1.31.3, mis sisaldab seda parandust.

15. juulil kohandati neid commite nginxis (1 (github.com), 2 (github.com), 3 (github.com), kuid mingil pÔhjusel vahetati teise ja kolmanda koha omavahel), probleemile anti nimetus CVE-2026-42533, ja F5 avaldas ametliku SA (f5.com).

Seoses konkreetse haavatavusega seekord: see ilmneb direktiivi map kasutamisel koos regulaaravaldistega, mis sisaldavad eraldatud parameetreid. Seoses teiste vajalike tingimustega, mis selle aktiveerimiseks on vajalikud, on kommitsemise kirjelduse tekst ja SA tekst veidi erinevad: SA-s on mÀrgitud, et hiljem peaks olema mingisugune stringi arvutamine, mis kasutab map'ist jÀÀnud eraldatud parameetrit enne selle sama map'i tulemust. Kommitsemise kirjelduse nÀites osaleb nende sammude vahel veel muutuja nullimine, mis sisaldab eraldatud parameetrit. Igal juhul on tÔenÀoliselt enamikus kÀivitatud nginx'ides seda harva, ning seetÔttu on haavatavus seega vÀhesed inimesi puudutanud. Tuleb samuti mÀrkida, et just selles juhtumis ei tundu, et oleks olemas parandusi pikkuse arvutamiseks tehtud tehtud commitides (vÔi ma ei leidnud neid hÀsti?), on olemas vaid kaitse, mis muudab probleemi kontrollitavaks http-pÀringu veaks. Kuigi 19. juulil lisati freenginx'isse mingeid parandusi,5bfb, 7622, b906) pikkuse arvutamiseks sarnases olukorras, kuid kohe ei saa aru, kas see on see vÔi mitte.

Haavatavus tekkis nginx 0.9.6 versioonis, parandused jÔudsid freenginx 1.31.3, nginx 1.30.4, nginx 1.31.3 versioonidesse.

SA-s on nginx'is tĂ€natud mitmeid isikuid sĂ”ltumatute hoiatuste eest haavatavuse kohta ja „koordineeritud teabe avaldamise standardite” jĂ€rgimise eest:

F5 tunnustab Ming Xuan'i, DKD (@pidifn), Ji’an Zhou'd ja Zhen Yan'i AntAISecurityLab'ist, Rafael Gaceki, Sergii Negodiuki EVO.company'st, Lam Jun Rong'i Calif.io'st, Mufeed VH Winfunc Research'ist (winfunc.com), Vexera AI (https://vexera.ai), Tu Tran Dinh (@1w4y), Stan Shaw (cyberstan), qianshuidewajueji, zenneth (randomguy6407), Zhenpeng (Leo) Lin depthfirst'ist, Lukas Johannes Moeller, Melih Tolga Sahin Vodafone TĂŒrkiye'st, Ayoub Nabil Boubagrat (GitHub: @ayoubnabil) ja Milan Jovic (Kljunowsky), kes tĂ”id selle probleemi meie tĂ€helepanu ja jĂ€rgivad kĂ”rgeimaid koordineeritud avaldamise standardeid.

Freenginx'is piiratakse paranduse kohta lisainformatsiooni tegelikult ainult commit'i sĂ”numiga. đŸ„‡Python 3.13 | ProHoster-s on see parandamine isegi mitte mĂ€rgitud ei „turvafirma” (security) ega „parandamine” (bugfix) allkirjaga, lihtsalt „lisamine” (feature). TĂ”enĂ€oliselt ei pidanud autor seda probleemi kriitiliseks. Kuidas on F5 poolt teavitavad sĂ”numid seotud juurdepÀÀsuga freenginx'i commit'ile, kas nad (vĂ”i keegi teine) teatasid probleemist freenginx autorile, ei Ă”nnestunud vĂ€lja selgitada.

Allikas: linux.org.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster