Die erste Version des neuen Hauptzweigs nginx 1.27.0 wurde veröffentlicht, in der die Entwicklung neuer Funktionen fortgesetzt wird. Gleichzeitig wurde die Version nginx 1.26.1 erstellt, die zum parallel unterstĂŒtzten stabilen Zweig gehört, in den nur Ănderungen zur Behebung schwerwiegender Fehler und SicherheitsanfĂ€lligkeiten eingefĂŒhrt werden. Im nĂ€chsten Jahr wird auf Basis des Hauptzweigs 1.27.x ein stabiler Zweig 1.28 gebildet. Der Code des Projekts ist in C geschrieben und steht unter der BSD-Lizenz.
In den neuen Versionen wurden 4 SicherheitsanfĂ€lligkeiten behoben, die das experimentelle Modul ngx_http_v3 betreffen (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 Probleme treten nur auf, wenn das Modul ngx_http_v3_module aktiviert ist und die Option âquicâ in der Direktive âlistenâ festgelegt wird. Zur AnfĂ€lligkeit der Forks Angie und FreeNginx liegen bisher keine Informationen vor.
Die SicherheitsanfĂ€lligkeit CVE-2024-34161 fĂŒhrt zu einem Speicherleck des Arbeitprozesses auf Systemen mit MTU, die auf einen Wert gröĂer als 4096 Byte eingestellt sind. Das Speicherleck tritt auf, wenn CRYPTO-Pakete, die zur Aushandlung der Verbindung verwendet werden, nach dem Senden der abschlieĂenden Nachricht durch den Client gesendet werden.
Die SicherheitsanfĂ€lligkeiten CVE-2024-31079, CVE-2024-32760 und CVE-2024-35200 werden durch SpeicherbeschĂ€digung verursacht und ermöglichen es einem Remote-Angreifer, den Arbeitprozess von nginx zum Absturz zu bringen, indem er eine speziell gestaltete QUIC-Sitzung einrichtet. Bei den SicherheitsanfĂ€lligkeiten CVE-2024-31079 und CVE-2024-32760 sind auch andere Auswirkungen eines Angriffs nicht auszuschlieĂen (potenzielle Möglichkeit einer CodeausfĂŒhrung durch den Angreifer?). Details werden nicht angegeben, aber laut den Korrekturen im Code werden die SicherheitsanfĂ€lligkeiten durch den Zugriff auf bereits freigegebenen Speicher (use-after-free), falsche Speicherzuweisung fĂŒr ein Array, Dereferenzierung eines Nullzeigers und fehlende ordnungsgemĂ€Ăe GröĂenprĂŒfung der in den Puffer eingefĂŒgten Daten verursacht.
Unter den nicht mit der Beseitigung von SicherheitsanfĂ€lligkeiten verbundenen Ănderungen in nginx 1.27.0:
- In den Direktiven âproxy_limit_rateâ, âfastcgi_limit_rateâ, âscgi_limit_rateâ und âuwsgi_limit_rateâ wurde die UnterstĂŒtzung fĂŒr die Angabe von Variablen hinzugefĂŒgt.
- Der Speicherverbrauch wurde bei der Verarbeitung von langanhaltenden Anfragen in Konfigurationen reduziert, in denen die Direktiven âgzipâ, âgunzipâ, âssiâ, âsub_filterâ oder âgrpc_passâ verwendet werden.
- Probleme mit dem Zusammenbau in GCC 14 bei Verwendung der Option ââwith-atomicâ wurden behoben.
- Fehler in der Implementierung von HTTP/3 wurden korrigiert.
ZusĂ€tzlich kann die Veröffentlichung des neuen Hauptzweigs FreeNginx 1.27.0, einem Nginx-Fork, der von Maxim Dunin, einem der Hauptentwickler von Nginx, weiterentwickelt wird, erwĂ€hnt werden. FreeNginx positioniert sich als gemeinnĂŒtziges Projekt, das die Entwicklung des Nginx-Codebases ohne unternehmerische Eingriffe gewĂ€hrleistet. In der neuen Version wurde die Fehlerbehandlung beim Lesen des Anfragekörpers verbessert, der Bau in NetBSD 10.0 wurde optimiert und die PID-Datei-Schreibung wurde verbessert (im Befehl âpidâ wurde der Parameter âoffâ hinzugefĂŒgt).
Quelle: opennet.ru
