Die erste Version des neuen Hauptzweigs nginx 1.27.0 wurde veröffentlicht, in dem die Entwicklung neuer Funktionen fortgesetzt wird. Gleichzeitig wurde die Version nginx 1.26.1 erstellt, die zur parallel unterstĂŒtzten stabilen Linie gehört, in die nur Ănderungen zur Behebung schwerwiegender Fehler und SicherheitsanfĂ€lligkeiten eingefĂŒgt werden. Im nĂ€chsten Jahr wird auf Basis des Hauptzweigs 1.27.x eine stabile Linie 1.28 gebildet. Der Code des Projekts ist in der Programmiersprache C geschrieben und wird unter der BSD-Lizenz verbreitet.
In den neuen Versionen wurden 4 SicherheitsanfĂ€lligkeiten behoben, die das experimentelle Modul ngx_http_v3 betreffen (standardmĂ€Ăig deaktiviert), welches UnterstĂŒtzung fĂŒr das HTTP/3-Protokoll bietet, das QUIC 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â gesetzt wird. Zur Verwundbarkeit der Forks Angie und FreeNginx liegen derzeit keine Informationen vor.
Die Schwachstelle CVE-2024-34161 fĂŒhrt zu einem Speicherinhalt-Leck im Arbeitsprozess auf Systemen mit einer MTU, die auf mehr als 4096 Byte eingestellt ist. Das Leck des Speicherinhalts tritt auf, wenn CRYPTO-Frames, die bei der Aushandlung der Verbindung verwendet werden, nach dem Versand der finalen Nachricht durch den Client gesendet werden.
Die Schwachstellen CVE-2024-31079, CVE-2024-32760 und CVE-2024-35200 werden durch SpeicherbeschĂ€digungen verursacht und ermöglichen es einem entfernten Angreifer, den Arbeitsprozess von nginx durch das Einrichten einer speziell gestalteten QUIC-Protokollsitzung zum Absturz zu bringen. Dabei sind bei den Schwachstellen CVE-2024-31079 und CVE-2024-32760 auch andere Angriffsfolgen nicht ausgeschlossen (potenzielle Möglichkeit der CodeausfĂŒhrung durch den Angreifer?). Details werden nicht bereitgestellt, aber Aufgrund der Codekorrekturen scheinen die Schwachstellen auf den Zugriff auf bereits freigegebenen Speicher (use-after-free), fehlerhafte Speicherzuweisung fĂŒr Arrays, das Dereferenzieren eines Nullzeigers und unzureichende GröĂenprĂŒfungen der in den Puffer geschriebenen Daten zurĂŒckzufĂŒhren zu sein.
Unter den nicht mit der Behebung von Schwachstellen 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 zur Angabe von Variablen hinzugefĂŒgt.
- Der Speicherverbrauch bei der Verarbeitung von langfristigen Anfragen in Konfigurationen, in denen die Direktiven âgzipâ, âgunzipâ, âssiâ, âsub_filterâ oder âgrpc_passâ verwendet werden, wurde gesenkt.
- Probleme mit dem Absturz in GCC 14 bei Verwendung der Option ââwith-atomicâ wurden behoben.
- Fehler in der Implementierung von HTTP/3 wurden behoben.
ZusĂ€tzlich ist die Veröffentlichung eines neuen Hauptzweigs FreeNginx 1.27.0 zu erwĂ€hnen, einem Fork von Nginx, der von Maxim Dunin, einem der Hauptentwickler von Nginx, vorangetrieben wird. FreeNginx wird als Non-Profit-Projekt positioniert, das die Entwicklung des Nginx-Codebasis ohne unternehmerische Eingriffe gewĂ€hrleistet. In der neuen Version wurde die Fehlerbehandlung beim Lesen des Anfragekörpers verbessert, der Build unter NetBSD 10.0 optimiert und die PID-Datei-Aufzeichnung verbessert (der Parameter âoffâ wurde zur Direktive âpidâ hinzugefĂŒgt).
Quelle: opennet.ru
