Cabeçalhos NTLM ou Negotiate provocam acúmulo de conexões e esgotamento de recursos
Um cliente sem autenticação pode comprometer a disponibilidade do Traefik ao abrir e encerrar muitas conexões curtas. Nas versões afetadas, uma requisição com o esquema NTLM ou Negotiate no cabeçalho Authorization já cria um transporte dedicado para acessar o backend, mesmo sem credencial válida ou desafio de autenticação do servidor. Quando a conexão do cliente termina, esse transporte mantém a conexão ociosa com o backend e suas goroutines. A repetição consome memória e descritores de arquivo até esgotar os recursos necessários para atender outras requisições.
Casos de uso afetados
- Você publica aplicações por uma versão afetada do Traefik que recebe conexões de clientes não autenticados. A falha também alcança instalações sem backends NTLM ou Kerberos configurados.
- Você utiliza o FastProxy para encaminhar requisições. Esse caminho também apresenta a retenção de recursos descrita no aviso.
Confira na sua instância
Confira a saída de traefik version em cada instância e compare com as faixas abaixo. Atualize a linha 2.11 para v2.11.61 ou a linha 3.7 para v3.7.17. Confirme a versão efetivamente executada após a atualização. Como conferência operacional, acompanhe a memória do processo e as conexões com os backends para identificar crescimento persistente após o encerramento das conexões dos clientes.
Versões afetadas e correções
| Linha | Afetadas | Corrigidas |
|---|---|---|
| github.com/traefik/traefik/v2 (2.11.x) | >= v2.11.58, <= v2.11.60 | v2.11.61 |
| github.com/traefik/traefik/v3 (3.7.x) | >= v3.7.14, <= v3.7.16 | v3.7.17 |
O aviso exclui a linha 3.6 e as linhas anteriores da versão 3, além da v2.11.57 e anteriores. A correção disponível no projeto exige atualização das suas instâncias.
