Rack · Rack · CVE-2026-34830
**Name of the Vulnerable Software and Affected Versions**
Rack versões anteriores a 2.2.23, 3.1.21 e 3.2.6
**Description**
A função `Rack::Sendfile#map accel path` do Rack usa diretamente o valor do cabeçalho de requisição `X-Accel-Mapping` em uma expressão regular para reescrever caminhos de arquivos usados com `X-Accel-Redirect`. Como este valor de cabeçalho não é devidamente higienizado, um invasor pode injetar metacaracteres de expressão regular no cabeçalho e manipular o cabeçalho de resposta `X-Accel-Redirect` gerado. Em implementações que usam `Rack::Sendfile` com `x-accel-redirect`, isso pode permitir que um invasor faça com que o nginx sirva arquivos não intencionais de locais internos configurados. O problema surge porque a parte `internal` do mapeamento, obtida do cabeçalho de requisição `HTTP X ACCEL MAPPING`, é inserida diretamente em uma expressão regular sem escape. Um invasor pode fornecer metacaracteres como `.*` ou grupos de captura para alterar a substituição do caminho. Isso difere do comportamento esperado do mapeamento baseado em cabeçalho, que deve tratar o valor do cabeçalho como um prefixo de caminho literal. O problema é explorável quando cabeçalhos `X-Accel-Mapping` não confiáveis atingem o Rack, como em configurações de proxy reverso que não definem o cabeçalho em algumas rotas. Isso pode levar à divulgação não autorizada de arquivos, com o impacto dependendo da arquitetura da implementação.
**Recommendations**
Atualize para a versão 2.2.23 ou posterior do Rack.
Atualize para a versão 3.1.21 ou posterior do Rack.
Atualize para a versão 3.2.6 ou posterior do Rack.
Remova ou sobrescreva os cabeçalhos de requisição `X-Accel-Mapping` recebidos no proxy reverso.
Prefira mapeamentos sendfile configurados explicitamente na aplicação em vez de depender de mapeamentos baseados em cabeçalhos de requisição.