U dha lëshimi 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 u formua lëshimi nginx 1.26.1, i lidhur me degën stabile që mbahet paralelisht, në të cilën bëhen vetëm ndryshime që lidhen me eliminimin e gabimeve të rënda dhe dobësive. Vitin e ardhshëm, në bazë të 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ë lëshimet e reja janë eliminuar 4 dobësi që prekin modulin eksperimental ngx_http_v3 (i çaktivizuar si parazgjedhje), që ofron mbështetje për protokollin HTTP/3, që përdor protokollin QUIC si transport për HTTP/2. Problemet shfaqen vetëm kur aktivizohet moduli ngx_http_v3_module dhe vendoset opsioni "quic" në direktivën "listen". Për dobësitë e forkëve Angie dhe FreeNginx nuk ka asnjë informacion deri më tani.
Dobësia CVE-2024-34161 çon në rrjedhjen e përmbajtjes së memories së procesit në sistemet me MTU të vendosur në një vlerë më të madhe se 4096 byte. Rrjedhja e përmbajtjes së memories ndodh në rastin e dërgimit të kuadrove CRYPTO, të përdorura gjatë negociatave të lidhjes, në fazën pas dërgimit të mesazhit përfundimtar nga klienti.
Dobësi të tjera CVE-2024-31079, CVE-2024-32760 dhe CVE-2024-35200 shkaktohen nga dëmtimi i memories dhe lejojnë një sulmues të largët të shkaktojë ndalimin e procesit nginx përmes vendosjes së një seance të dizajnuar posaçërisht që bazohet në protokollin QUIC. Për dobësitë CVE-2024-31079 dhe CVE-2024-32760 nuk përjashtohen pasojat e tjera të sulmit (mundësia për ekzekutimin e kodit të sulmuesit?). Detajet nuk janë dhënë, por sipas rregullimeve në kod, dobësitë shkaktohen nga qasja në kujtesë që tashmë është liruar (use-after-free), ndarjen e gabuar të memories për një masiv, dereferencimi i një treguesi nul dhe mungesa e kontrollit të duhur të madhësisë së të dhënave të vendosura në bufër.
Mes ndryshimeve që nuk lidhen me eliminimin 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 specifikimin e variablave.
- ĂshtĂ« ulur konsumi i memories gjatĂ« trajtimit tĂ« kĂ«rkesave tĂ« gjata nĂ« konfigurimet qĂ« pĂ«rdorin direktivat "gzip", "gunzip", "ssi", "sub_filter" ose "grpc_pass".
- JanĂ« zgjidhur problemet me crash nĂ« GCC 14 duke pĂ«rdorur opsionin "âwith-atomic".
- Gabimet në realizimin e HTTP/3 janë korrigjuar.
Në veçanti, mund të theksohet lëshimi i degës kryesore të re 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-fitimprurës, që ofron zhvillimin e bazës së kodit Nginx pa ndërhyrjen e korporatave. Në versionin e ri është përmirësuar trajtimi i gabimeve gjatë leximit të trupit të kërkesës, është realizuar 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
