La première version de la nouvelle branche principale nginx 1.21.0 est présentée, dans laquelle le développement de nouvelles fonctionnalités se poursuivra. En même temps, une version corrective de la branche stable 1.20.1, maintenue en parallèle, a été préparée, apportant seulement des modifications liées à la correction de bugs critiques et de vulnérabilités. L'année prochaine, une branche stable 1.22 sera formée sur la base de la branche principale 1.21.x.
Les nouvelles versions corrigent la vulnérabilité (CVE-2021-23017) dans le code de résolution des noms d'hôtes en DNS, qui peut provoquer un plantage ou potentiellement l'exécution de code malveillant. Le problème se manifeste lors du traitement de certaines réponses du serveur DNS, entraînant un débordement de mémoire tampon d'un octet. La vulnérabilité se manifeste uniquement lorsque le paramètre de résolution DNS est activé par la directive «resolver». Pour réaliser l'attaque, un attaquant doit être capable de falsifier des paquets UDP en provenance du serveur DNS ou de prendre le contrôle du serveur DNS. La vulnérabilité est présente depuis la version nginx 0.6.18. Pour corriger le problème dans les anciennes versions, un patch peut être utilisé.
Modifications dans nginx 1.21.0 sans rapport avec la sécurité :
- Les directives «proxy_ssl_certificate», «proxy_ssl_certificate_key», «grpc_ssl_certificate», «grpc_ssl_certificate_key», «uwsgi_ssl_certificate» et «uwsgi_ssl_certificate_key» ont ajouté la prise en charge des variables.
- Le module de proxy de messagerie a ajouté la prise en charge de «pipelining» pour l'envoi de plusieurs requêtes POP3 ou IMAP sur une seule connexion, ainsi qu'une nouvelle directive «max_errors» qui définit le nombre maximal d'erreurs de protocole après lequel la connexion sera fermée.
- Le module de stream a ajouté le paramètre «fastopen», activant le mode «TCP Fast Open» pour les sockets d'écoute.
- Les problèmes d'échappement des caractères spéciaux lors des redirections automatiques avec ajout d'un slash à la fin ont été résolus.
- Le problème de fermeture des connexions avec les clients lors de l'utilisation du SMTP pipelining a été résolu.
Source : opennet.ru
