È stata pubblicata la versione principale di nginx 1.29.8, in cui continuano a essere sviluppate nuove funzionalità. Nella parallela branch stabile 1.28.x vengono apportate solo modifiche relative alla correzione di gravi bug e vulnerabilità. In futuro, sulla base della branch principale 1.29.x verrà formata la branch stabile 1.30. Il codice del progetto è scritto in C ed è distribuito con licenza BSD.
Nel nuovo rilascio:
- È stata aggiunta la direttiva max_headers, che limita il numero massimo di intestazioni HTTP in una richiesta. Se il limite viene superato, viene restituito un errore 400 (Bad Request). Questa funzionalità è stata trasferita da FreeNginx.
- È stata garantita la compatibilità con la libreria OpenSSL 4.0, attualmente in fase di alpha testing.
- È consentito utilizzare le maschere nella direttiva «include», specificata all'interno del blocco «geo».
- È stato corretto un errore nella gestione delle risposte HTTP con codice 103 (Early Hints), restituite dal backend proxy.
- È stata risolta la mancata impostazione delle variabili $request_port e $is_request_port nelle sotto-richieste.
In aggiunta, si segnala la pubblicazione della release del progetto FreeNginx 1.29.8, un fork di Nginx. Lo sviluppo del fork è guidato da Maxim Dunin, uno dei principali sviluppatori di Nginx. FreeNginx è posizionato come un progetto non commerciale che assicura lo sviluppo della base di codice di Nginx senza interferenze aziendali. Il codice di FreeNginx continua a essere fornito sotto la licenza BSD. La nuova versione garantisce la compatibilità con OpenSSL 4.0. È stato risolto un overflow del buffer (CVE-2026-27654) nel modulo ngx_http_dav_module, che si verifica durante la gestione delle richieste WebDAV COPY e MOVE utilizzando direttive 'alias' nei blocchi 'location'. È stata eliminata la possibilità di manipolare i record PTR nel DNS per inserire i dati dell'attaccante (CVE-2026-28753) nelle richieste auth_http e nel comando XCLIENT in una connessione SMTP al backend.
Fonte: opennet.ru
