UtgÄvan av huvudgrenen nginx 1.27.4 har bildats, inom vilket arbetet med nya funktioner fortsÀtter, samt utgÄvan av den parallellt stödjda stabila grenen nginx 1.26.3, dÀr endast Àndringar relaterade till att ÄtgÀrda allvarliga fel och sÄrbarheter görs. I uppdateringarna har en sÄrbarhet (CVE-2025-23419) ÄtgÀrdats som möjliggör att klientens TLS-certifikat kontrolleras.
SÄrbarheten orsakas av bristen pÄ adekvata kontroller vid hantering av virtuella vÀrdar kopplade till en enskild IP-adress och portnummer, som vÀljs baserat pÄ domÀnnamnet angivet genom TLS-tillÀgget SNI vid HTTPS-anslutningar. I sÄdana konfigurationer kunde en angripare ÄteranvÀnda en TLS-session i kontexten av en annan virtuell vÀrd för att kringgÄ autentisering med klientens TLS-certifikat. Problemet uppstÄr i konfigurationer som stöder Äterupptagning av TLS-sessioner med hjÀlp av "TLS session ticket" eller anvÀnder TLS-sessioncache i instÀllningarna. servern som standard, dÀr autentisering görs med klientens TLS-certifikat. SÄrbarheten finns frÄn och med version nginx 1.11.4 nÀr den kompileras med OpenSSL och TLSv1.3-protokollet Àr aktiverat.
Icke-sÀkerhetsrelaterade Àndringar:
- Möjligheter har lagts till för att minska resursförbrukningen och belastningen pÄ CPU:n vid anvÀndning av TLS i konfigurationer med ett stort antal block av server och plats. De tillagda förÀndringarna gör det möjligt att i stÀllet för att skapa en separat SSL-kontakt (SSL_CTX i OpenSSL) för varje konfigurationsblock anvÀnda den redan befintliga SSL-kontakten frÄn förÀldern.
- Problemen med lÄngsammare laddning av konfigurationsfiler pÄ grund av omparsing av samma uppsÀttning TLS-certifikat, nycklar och listor över certifikatutfÀrdare har lösts. Konfigurationens omstart har snabba i och med ÄteranvÀndning av oförÀndrade TLS-objekt sÄsom certifikat, nycklar och CRL. För att inaktivera arv av objekt vid uppdatering av konfigurationen har direktivet "ssl_object_cache_inheritable" lagts till.
- En cache för certifikat och nycklar som laddas med hjÀlp av variabler i direktiven (t.ex. "ssl_certificate /etc/ssl/$ssl_server_name.crt") har lagts till. För att hantera cachen har direktiven "ssl_certificate_cache", "proxy_ssl_certificate_cache", "grpc_ssl_certificate_cache" och "uwsgi_ssl_certificate_cache" lagts till. Genom de angivna direktiven kan du konfigurera maximal cachestorlek, giltighetstid för poster och tid för rensning av oanvÀnda poster. Till exempel: "ssl_certificate_cache max=1000 inactive=20s valid=1m;".
- Direktivet "keepalive_min_timeout" har lagts till, vilket definierar timeouten under vilken nginx inte kommer att stÀnga keep-alive-anslutningen med klienten.
- Problemet med meddelanden i loggen "gzip filter failed to use preallocated memory" vid kompilering med zlib-ng-biblioteket har lösts.
- Problemet med kompilering av libatomic-biblioteket har lösts nÀr byggalternativet "--with-libatomic=DIR" anvÀnds.
- Ett fel har ÄtgÀrdats som gjorde det omöjligt att upprÀtta en anslutning via QUIC-protokollet vid anvÀndning av 0-RTT.
- Det har sÀkerstÀllts att versionsförfrÄgningar om QUIC som kommer frÄn klienter ignoreras.
- Problemen med byggandet i Solaris 10 med modulen ngx_http_v3_module har ÄtgÀrdats.
- Fel i implementeringen av HTTP/3 har ÄtgÀrdats.
KĂ€lla: opennet.ru
