Nginx 1.25.4 behebt zwei HTTP/3-Schwachstellen

Der Hauptzweig von Nginx 1.25.4 wurde veröffentlicht, in dem die Entwicklung neuer Funktionen fortgesetzt wird. Der parallel gepflegte stabile Zweig 1.24.x enthält nur Änderungen im Zusammenhang mit der Beseitigung schwerwiegender Fehler und Schwachstellen. Basierend auf dem Hauptzweig 1.25.x wird künftig ein stabiler Zweig 1.26 gebildet. Der Projektcode ist in C geschrieben und wird unter der BSD-Lizenz vertrieben.

Die neue Version behebt zwei Schwachstellen im experimentellen Modul http_v3_module (standardmäßig deaktiviert), das Unterstützung für das HTTP/3-Protokoll bietet, das das QUIC-Protokoll als Transport für HTTP/2 verwendet. Die erste Schwachstelle (CVE-2024-24989) wird durch eine Nullzeiger-Dereferenzierung verursacht, und die zweite (CVE-2024-24990) wird durch Speicherzugriff nach der Freigabe verursacht (CVE-2024-24990). Im Changelog heißt es, dass beide Schwachstellen nur bei der Verarbeitung speziell entwickelter QUIC-Sitzungen zu einem Absturz führen können, die zweite Schwachstelle scheint jedoch nicht auf schwerwiegendere Folgen untersucht worden zu sein.

Neben der Behebung von Schwachstellen enthält die neue Version auch allgemeine Verbesserungen und Korrekturen an der HTTP/3-Implementierung und behebt Fehler im Zusammenhang mit Socket-Leaks, Socket-Fehlern oder Abstürzen bei der Verwendung von AIO. Es wurde ein Problem behoben, bei dem Verbindungen mit ausstehenden AIO-Vorgängen während des sanften Herunterfahrens alter Arbeitsprozesse vorzeitig geschlossen wurden. Ein Absturz beim Umleiten von Fehlern mit Code 415 mithilfe der error_page-Direktive bei Verwendung von SSL-Proxying und der image_filter-Direktive wurde behoben.

Darüber hinaus wurde vor einigen Tagen njs 0.8.4 veröffentlicht, ein JavaScript-Interpreter für den Nginx-Webserver. Der njs-Interpreter implementiert ECMAScript-Standards und ermöglicht es Ihnen, die Fähigkeit von nginx zur Verarbeitung von Anforderungen mithilfe von Skripten in der Konfiguration zu erweitern. Skripte können in einer Konfigurationsdatei verwendet werden, um erweiterte Logik für die Verarbeitung von Anfragen, die Generierung einer Konfiguration, die dynamische Generierung einer Antwort, die Änderung einer Anfrage/Antwort oder die schnelle Erstellung von Stubs zur Lösung von Problemen in Webanwendungen zu definieren. Die neue Version enthält ausschließlich Fehlerbehebungen.

Source: opennet.ru

Kommentar hinzufügen