CVE-2026-27590: Caddy: mudança de tamanho no case-folding Unicode causa confusão de índice split_path no transporte FastCGI
O Caddy calcula o índice de divisão do caminho FastCGI em uma cópia em minúsculas do caminho da requisição e aplica esse índice ao caminho original. Como alguns caracteres Unicode mudam de tamanho em bytes ao serem convertidos para minúsculas, SCRIPT_NAME, SCRIPT_FILENAME e PATH_INFO podem ser derivados incorretamente, o que pode causar confusão de caminho. O registro indica que a correção está na versão 2.11.1.
Visão geral
O Caddy calcula o ponto de divisão do FastCGI em uma cópia do caminho da requisição convertida para minúsculas e depois aplica esse índice de byte ao caminho original. Alguns caracteres Unicode mudam seu tamanho em bytes UTF-8 ao serem convertidos para minúsculas, então o índice pode apontar para a posição errada. O registro indica que isso pode levar à derivação incorreta de SCRIPT_NAME, SCRIPT_FILENAME e PATH_INFO.
Impacto
- Uma requisição contendo .php pode ser mapeada para um arquivo diferente no disco do que o pretendido (confusão de caminho).
- Quando um atacante consegue controlar o conteúdo de arquivos, por exemplo por meio de recursos de upload, arquivos que não são .php podem ser processados pelo PHP. O registro descreve isso como potencial execução remota de código, dependendo da implantação.
- O impacto real depende da implantação, que o registro não descreve.
Produtos e versões afetadas
- Produto: Caddy (Caddyserver Caddy).
- Versões afetadas: anteriores à 2.11.1, conforme os dados da CNA e do NVD no registro.
- Versão corrigida: 2.11.1, conforme a descrição do registro e a referência de release.
Status de exploração
- O registro indica que esta CVE não consta no catálogo KEV da CISA, portanto não há exploração ativa confirmada nas fontes consultadas.
- O registro inclui o valor de exploração SSVC poc, que indica disponibilidade de prova de conceito e não é evidência de exploração no ambiente real.
- A probabilidade EPSS no registro é 0.00962, com percentil de 0.61281.
Correção e mitigação
- Atualize o Caddy para a versão 2.11.1 ou superior.
- Após a atualização, confirme o build em execução e revise as notas de release listadas nas referências.
- Se a atualização não puder ser feita imediatamente, reduza a exposição de recursos de upload que permitam colocar arquivos em locais servidos pela web e revise como os manipuladores PHP são associados aos tipos de arquivo. Trata-se de uma recomendação geral de endurecimento, não de um contorno verificado pelas fontes.
- Garanta que os runtimes FastCGI processem apenas os tipos de arquivo que a aplicação pretende executar.
Detecção
- Revise os logs do servidor web em busca de requisições com .php no caminho cujo script ou path info resolvido pareça inesperado para a aplicação.
- Identifique arquivos enviados com extensões que não são PHP, acessíveis por URL e processados pelo PHP.
- Observe caracteres Unicode incomuns em caminhos de requisição como sinal que merece análise. Não se trata de indicador confirmado de exploração.
Limitações das informações disponíveis
- O registro não lista implantações vulneráveis específicas nem pré-condições além da descrição.
- O campo de correções do registro está vazio; a versão corrigida foi obtida da descrição e da referência de release.
- O aviso do fornecedor e o aviso de terceiros do FrankenPHP não foram consultados; esta análise baseia-se no registro.
- Não é possível fazer uma avaliação de risco específica do ambiente apenas com os dados disponíveis.
Perguntas frequentes
O que causa a CVE-2026-27590 no Caddy?
Segundo o registro, o Caddy calcula o índice de divisão FastCGI em uma cópia em minúsculas do caminho da requisição e aplica esse índice ao caminho original. Alguns caracteres Unicode mudam de tamanho em bytes ao serem convertidos, o que pode gerar valores incorretos de SCRIPT_NAME, SCRIPT_FILENAME e PATH_INFO.
Quais versões do Caddy são afetadas?
O registro indica que as versões anteriores à 2.11.1 são afetadas. A correção é indicada como sendo a versão 2.11.1.
Há exploração ativa conhecida desta vulnerabilidade?
Não. O registro mostra que a CVE não consta no catálogo KEV da CISA, e não há exploração ativa confirmada nas fontes consultadas.
Esta análise foi redigida com auxílio de IA a partir de dados verificados das fontes e checada automaticamente contra eles.