Die erste Ausgabe des Projekts Gixy-Next wurde vorgestellt, das einen statischen Analyzer fĂŒr Nginx-Konfigurationsdateien entwickelt, der problematische Einstellungen identifizieren kann, die die Sicherheit und Leistung negativ beeinflussen. Das Projekt wird von Joshua Rogers entwickelt, der vor einigen Jahren 55 Schwachstellen im Proxy-Server Squid aufgedeckt hat. Gixy-Next wurde als Fork des Projekts Gixy-ng erstellt, das die Entwicklung des Gixy-Tools weitergefĂŒhrt hat, das 2017 von Yandex veröffentlicht wurde und in den letzten zwei Jahren nicht aktualisiert wurde.
Als Grund fĂŒr die Schaffung des neuen Forks wird Unzufriedenheit mit den MaĂnahmen des Maintainers des Gixy-ng-Projekts genannt, der AI-Tools wĂ€hrend der Entwicklung missbrĂ€uchlich eingesetzt hat. Der Fork wurde erstellt, nachdem im Repository automatisch generierte Ănderungen hinzugefĂŒgt wurden, die nicht ordnungsgemĂ€Ă ĂŒberprĂŒft wurden und zu Regressionen und VerhaltensĂ€nderungen des Tools fĂŒhrten. Im Code erschienen sinnlose Artefakte durch den Einsatz von AI und Funktionen, die nicht das taten, was sie sollten. Zum Beispiel wurden aufgeblĂ€hte Korrekturen eingereicht, die Tausende von Zeilen umfassten, wĂ€hrend sie durch einen 10-zeiligen Patch hĂ€tten ersetzt werden können. DarĂŒber hinaus wurde Werbung in die Dokumentation und die eingebauten Hinweise eingefĂŒgt, und externe Pull-Anfragen wurden unter Ausschluss von Informationen ĂŒber die Autoren angenommen.

In Gixy-Next wurde der Code-Basis von MĂŒllĂ€nderungen, die mit Hilfe von AI erstellt wurden, gesĂ€ubert, Fehler wurden behoben, das Testen mit groĂen NGINX-Konfigurationsdateien wurde verbessert, und Ănderungen zur Vereinfachung der Wartung der Code-Basis wurden hinzugefĂŒgt. Zu den neuen Funktionen von Gixy-Next im Vergleich zum Original-Gixy gehören:
- 19 neue Plugins, die die Korrektheit von Einstellungen im Zusammenhang mit Zugriffskontrolle, DNS, Proxying und regulĂ€ren AusdrĂŒcken ĂŒberprĂŒfen und Einstellungen identifizieren, die zusĂ€tzliche Overheads verursachen und die Leistung beeintrĂ€chtigen.
Zu den hinzugefĂŒgten Plugins gehören: allow_without_deny, return_bypasses_allow_deny, proxy_pass_normalized, merge_slashes_on, resolver_external, stale_dns_cache, version_disclosure, invalid_regex, regex_redos, add_header_content_type, add_header_multiline, add_header_redefinition, default_server_flag, error_log_off, hash_without_default, if_is_evil, try_files_is_evil_too, unanchored_regex, low_keepalive_requests, worker_rlimit_nofile_vs_connections, proxy_buffering_off.
- Standardisierte und reproduzierbare Ausgaben von Berichten, die fĂŒr die automatisierte Analyse geeignet sind.
- UnterstĂŒtzung der Module map und geo.
- Modernisierung der Plugins origins, ssrf, http_splitting, alias_traversal und valid_referers zur Reduzierung von Fehlalarmen und zur genaueren Erkennung von Problemen.
- Korrekte Verarbeitung zusĂ€tzlicher Konfigurationsdateien, die ĂŒber die Direktive âincludeâ eingebunden werden.
- Verbesserung der ĂberprĂŒfung regulĂ€rer AusdrĂŒcke.
- Möglichkeit, als Online-Scanner zu arbeiten, der im Browser funktioniert.
Quelle: opennet.ru
