Lançado o primeiro lançamento do projeto Gixy-Next, que desenvolve um analisador estático para arquivos de configuração do Nginx, permitindo identificar configurações problemáticas que afetam negativamente a segurança e o desempenho. O projeto é liderado por Joshua Rogers, que há alguns anos descobriu 55 vulnerabilidades no servidor proxy Squid. O Gixy-Next foi criado como um fork do projeto Gixy-ng, que continuou o desenvolvimento da ferramenta Gixy, aberta pela Yandex em 2017 e que não foi atualizada nos últimos dois anos.
A razão para a criação do novo fork é a insatisfação com as ações do mantenedor do projeto Gixy-ng, que abusou do uso de ferramentas de IA durante o desenvolvimento. O fork foi criado após alterações geradas automaticamente começaram a ser adicionadas ao repositório, sem a devida revisão, levando a regressões e comportamentos indesejados da ferramenta. O código começou a apresentar artefatos sem sentido resultantes da aplicação de IA e funções que não realizavam aquilo que deveriam. Por exemplo, correções inflacionadas que ocupavam milhares de linhas puderam ser substituídas por um patch de 10 linhas. Além disso, foram adicionados anúncios na documentação e nas dicas embutidas, e pull requests de terceiros foram aceitos com a remoção de informações sobre os autores.

No Gixy-Next, a base de código foi limpa de alterações indesejadas geradas por IA, erros foram corrigidos, testes foram implementados em arquivos grandes de configuração do NGINX e mudanças foram adicionadas para facilitar a manutenção da base de código. Entre as novas funcionalidades do Gixy-Next em comparação com o Gixy original, destacam-se:
- 19 novos plugins que verificam a validade das configurações relacionadas ao controle de acesso, DNS, proxy e expressões regulares, além de identificarem configurações que levam a custos adicionais e redução de desempenho.
Entre os plugins adicionados estão: 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.
- Saída de relatórios padronizada e reproduzível, adequada para análise automatizada.
- Suporte para os módulos map e geo.
- Modernização dos plugins origins, ssrf, http_splitting, alias_traversal e valid_referers para reduzir falsos positivos e detectar problemas com mais precisão.
- Processamento correto de arquivos de configuração adicionais, conectados através da diretiva 'include'.
- Melhoria na verificação de expressões regulares.
- Possibilidade de construção como um scanner online, operando no navegador.
Fonte: opennet.ru
