On välja antud peamine nginx 1.27.4 versioon, mille raames jätkatakse uute võimaluste arendamist, samuti on välja antud paralleelselt toetatav stabiilne versioon nginx 1.26.3, kuhu kantakse ainult tõsiste vigade ja haavatavuste kõrvaldamisega seotud muudatusi. Uuendustes eemaldati haavatavus (CVE-2025-23419), mis võimaldas mööda minna kliendi TLS-sertifikaatide kontrollimisest.
Haavatavus on põhjustatud nõuetekohaste kontrollide puudumisest virtuaalhostide töötlemisel, mis on seotud ühe IP-aadressi ja portide numbritega, ning valitakse HTTPS-i päringute tegemisel domeeninime põhjal, mis on määratud TLS-i laienduse SNI abil. Sellistes konfiguratsioonides sai ründaja uuesti kasutada TLS-seanssi teise virtuaalhosti kontekstis, et mööda minna kliendi TLS-sertifikaadi autentimisest. Probleem avaldub konfiguratsioonides, mis toetavad TLS-seansside taastamist „TLS session ticket“ abil või kasutavad TLS-seansside vahemälu seadistustes. serverile vaikimisi, kus kasutatakse kliendi TLS-sertifikaatide autentimist. Haavatavus on olemas alates versioonist nginx 1.11.4, kui see koostatakse OpenSSL-iga ja TLSv1.3 protokoll on lubatud.
Mittemugavust tekitavad muudatused:
- Lisatud on võimalused ressursikasutuse vähendamiseks ja CPU koormuse vähendamiseks TLS-i kasutamisel suure arvu serveri ja asukoha plokkidega konfiguratsioonides. Lisatud muudatused võimaldavad mitte luua iga konfiguratsiooni ploki jaoks eraldi SSL-i konteksti (SSL_CTX OpenSSLis), vaid kasutada juba olemasolevat SSL-i konteksti vanemast plokist.
- Lahendatud probleemid konfiguratsioonifailide pika laadimisega, mis tulenesid sama komplekti korduvast tõlgendamisest, TLS-sertifikaadid, võtmed ja sertifitseerimiskeskuste nimekirjad. Konfiguratsiooni taaskäivitamine on kiirem, kuna ei muutu TLS-objekte, nagu sertifikaadid, võtmed ja CRL. Objektide pärimise keelamiseks konfiguratsiooni värskendamisel on lisatud direktiiv „ssl_object_cache_inheritable“.
- Lisatud vahemälu sertifikaatide ja võtmete jaoks, mis on laaditud direktiivide muutujate abil (näiteks "ssl_certificate /etc/ssl/$ssl_server_name.crt"). Vahemälu haldamiseks on lisatud direktiivid "ssl_certificate_cache", "proxy_ssl_certificate_cache", "grpc_ssl_certificate_cache" ja "uwsgi_ssl_certificate_cache". Nende direktiivide kaudu saab seadistada vahemälu maksimaalse suuruse, salvestiste kehtivuse aja ja nõudmata salvestiste puhastamise aja. Näiteks: "ssl_certificate_cache max=1000 inactive=20s valid=1m;".
- Lisatud on direktiiv «keepalive_min_timeout», mis määratleb ajavahemiku, mille jooksul nginx ei sulge kliendiga keep-alive ühendust.
- Lahendatud probleem, mis põhjustas logidesse sõnumi „gzip filter failed to use preallocated memory“ ilmumise, kui see on koostatud zlib-ng teegiga.
- Lahendatud probleem libatomic teegi koostamisel, kasutades koostamisvalikut „—with-libatomic=DIR“.
- Parandatud viga, mis takistas QUIC-protokolli ühenduse loomist 0-RTT kasutamisel.
- Tagatud on QUIC-i versiooni kokkulepete ignoreerimine, kui need tulevad klientidelt.
- Lahendatud probleemid koostamisel Solaris 10-s koos mooduliga ngx_http_v3_module.
- Parandatud vead HTTP/3 rakenduses.
Allikas: opennet.ru
