Ishulli versioni i parë i degës kryesore të re nginx 1.27.0, në kuadër të së cilës do të vazhdojë zhvillimi i mundësive të reja. Njëkohësisht, është formuar versioni nginx 1.26.1, që i takon degës stabile të suportuar paralelisht, në të cilën bëhen vetëm ndryshime që lidhen me zgjidhjen e defekteve serioze dhe dobësive. Në vitin e ardhshëm, mbi bazën e degës kryesore 1.27.x do të formohet dega stabile 1.28. Kodi i projektit është shkruar në gjuhën C dhe shpërndahet nën licencën BSD.
Në versionet e reja janë rregulluar 4 dobësi që prekin modulin eksperimental ngx_http_v3 (i çaktivizuar nga e drejta), i cili ofron mbështetje për protokollin HTTP/3, i cili përdor protokollin QUIC si transport për HTTP/2. Problemet manifestohen vetëm kur aktivizohet moduli ngx_http_v3_module dhe vendoset opsioni 'quic' në direktivën 'listen'. Për dobësitë në forkat Angie dhe FreeNginx nuk ka asnjë informacion deri tani.
Dobësia CVE-2024-34161 sjell deri në rrjedhjen e përmbajtjes së memories së procesorit në sistemet me MTU të vendosur mbi 4096 bytes. Rrjedhja e përmbajtjes së memories ndodh kur dërgohen kuadrat CRYPTO, të përdorura gjatë negociatës së lidhjes, pas dërgimit nga klienti të mesazhit përmbyllës.
Dobësitë CVE-2024-31079, CVE-2024-32760 dhe CVE-2024-35200 janë shkaktuar nga dëmtimi i memories dhe lejojnë një sulmues të largët të shkaktojë ndalimin e papritur të procesit nginx përmes vendosjes së një seance të strukturuar posaçërisht mbi protokollin QUIC. Në këtë rast, për dobësitë CVE-2024-31079 dhe CVE-2024-32760 nuk përjashtohen edhe pasojat e tjera të sulmit (mundësia e potenciale për ekzekutimin e kodit të sulmuesit?). Detajet nuk jepen, por sipas rregullimeve në kod, dobësitë shkaktohen nga qasja në memorjen e liruar (use-after-free), ndarja e gabuar e memories për një grup, dereferencimi i treguesit të null dhe mungesa e kontrollit të duhur për madhësinë e të dhënave të vendosura në buffer.
Ndër ndryshimet që nuk lidhen me zgjidhjen e dobësive në nginx 1.27.0:
- Në direktivat 'proxy_limit_rate', 'fastcgi_limit_rate', 'scgi_limit_rate' dhe 'uwsgi_limit_rate' është shtuar mbështetje për caktimin e variablave.
- Konsumi i memories është zvogëluar gjatë përpunimit të kërkesave me jetëgjatësi të gjatë në konfigurimet që përdorin direktivat 'gzip', 'gunzip', 'ssi', 'sub_filter' ose 'grpc_pass'.
- Problemet me mbledhjen nĂ« GCC 14 me opsionin "âwith-atomic" janĂ« zgjidhur.
- Gabimet në implementimin e HTTP/3 janë korrigjuar.
Për më tepër, vlen të përmendet publikimi i degës së re kryesore FreeNginx 1.27.0, një fork i Nginx, i zhvilluar nga Maksim Dunin, një nga zhvilluesit kryesorë të Nginx. FreeNginx pozicionohet si një projekt jo-komercial që siguron zhvillimin e kodit të bazës Nginx pa ndërhyrje korporative. Në versionin e ri është përmirësuar trajtimi i gabimeve gjatë leximit të trupit të kërkesës, është rregulluar ndërtimi në NetBSD 10.0 dhe është përmirësuar regjistrimi i skedarëve PID (në direktivën "pid" është shtuar parametri "off").
Burimi: opennet.ru
