Huvudgrenen av nginx 1.25.4 har släppts, inom vilken utvecklingen av nya funktioner fortsätter. Den parallellt underhållna stabila grenen 1.24.x innehåller endast ändringar relaterade till eliminering av allvarliga buggar och sårbarheter. I framtiden, baserat på huvudgrenen 1.25.x, kommer en stabil gren 1.26 att bildas. Projektkoden är skriven i C och distribueras under BSD-licensen.
Den nya versionen fixar två sårbarheter i experimentmodulen http_v3_module (inaktiverad som standard), som ger stöd för HTTP/3-protokollet, som använder QUIC-protokollet som en transport för HTTP/2. Den första sårbarheten (CVE-2024-24989) orsakas av en nollpekardereferens, och den andra (CVE-2024-24990) orsakas av minnesåtkomst efter frigöring (CVE-2024-24990). Ändringsloggen anger att båda sårbarheterna endast kan leda till en krasch vid bearbetning av specialdesignade QUIC-sessioner, men den andra sårbarheten verkar inte ha analyserats för allvarligare konsekvenser.
Förutom att åtgärda sårbarheter innehåller den nya versionen även allmänna förbättringar och korrigeringar av HTTP/3-implementeringen, samt korrigeringar för socketläckor, socketfel och krascher vid användning av AIO. Ett problem med att anslutningar stängdes för tidigt med oavslutade AIO-operationer under smidig avslutning av äldre arbetsprocesser har åtgärdats. En krasch vid omdirigering av 415-fel med hjälp av error_page-direktivet har åtgärdats vid användning av SSL-proxying- och image_filter-direktiven.
För några dagar sedan släpptes även njs 0.8.4, en JavaScript-tolk för webbservrar nginx. NJS-tolken implementerar ECMAScript-standarder och låter dig utöka nginx funktioner för förfrågningsbehandling med hjälp av konfigurationsskript. Skript kan användas i konfigurationsfilen för att definiera avancerad logik för förfrågningsbehandling, generera konfigurationer, dynamiskt generera svar, ändra förfrågningar/svar eller snabbt skapa stubbar för att lösa problem i webbapplikationer. Den nya versionen innehåller endast buggfixar.
Källa: opennet.ru
