De hoofdtak van nginx 1.25.4 is uitgebracht, waarbinnen de ontwikkeling van nieuwe functies doorgaat. De parallel onderhouden stabiele tak 1.24.x bevat alleen wijzigingen die verband houden met het elimineren van ernstige bugs en kwetsbaarheden. In de toekomst zal op basis van de hoofdtak 1.25.x een stabiele tak 1.26 worden gevormd. De projectcode is geschreven in C en gedistribueerd onder de BSD-licentie.
De nieuwe versie verhelpt twee kwetsbaarheden in de experimentele module http_v3_module (standaard uitgeschakeld), die ondersteuning biedt voor het HTTP/3-protocol met behulp van het QUIC-protocol als transport voor HTTP/2. De eerste kwetsbaarheid (CVE-2024-24989) wordt veroorzaakt door een dereferentie naar een null-pointer, en de tweede (CVE-2024-24990) wordt veroorzaakt door toegang tot het geheugen nadat het is vrijgegeven (CVE-2024-24990). In het changelog wordt vermeld dat beide kwetsbaarheden alleen tot een crash kunnen leiden bij het verwerken van speciaal op maat gemaakte QUIC-sessies. Het lijkt er echter op dat de tweede kwetsbaarheid niet is geanalyseerd op ernstigere gevolgen.
Naast het verhelpen van beveiligingslekken bevat de nieuwe versie ook algemene verbeteringen en oplossingen voor de HTTP/3-implementatie, evenals oplossingen voor socketlekken, socketfouten en crashes bij het gebruik van AIO. Een probleem met het voortijdig sluiten van verbindingen met onvoltooide AIO-bewerkingen tijdens de gecontroleerde beëindiging van legacy workerprocessen is opgelost. Een crash bij het omleiden van 415-fouten met behulp van de error_page-richtlijn is verholpen. SSL-proxying- en image_filter-richtlijnen.
Enkele dagen geleden is ook njs 0.8.4 uitgebracht, een JavaScript-interpreter voor web Server nginx. De njs-interpreter implementeert ECMAScript-standaarden en stelt je in staat de mogelijkheden van nginx voor het verwerken van verzoeken uit te breiden met behulp van configuratiescripts. Scripts kunnen in het configuratiebestand worden gebruikt om geavanceerde logica voor het verwerken van verzoeken te definiëren, configuraties te genereren, dynamisch antwoorden te genereren, verzoeken/antwoorden te wijzigen of snel stubs te creëren om problemen in webapplicaties op te lossen. De nieuwe versie bevat alleen bugfixes.
Bron: opennet.ru
