S3-Proxy · S3-Proxy · CVE-2026-42882
**Nome do Software Vulnerável e Versões Afetadas**
s3-proxy versões anteriores a 0.0.0-20260424211602-1320e4abd46a
**Descrição**
A normalização inconsistente de caminhos de URL e a lógica de roteamento levam a falhas de autenticação, permitindo o acesso não autenticado a objetos protegidos. Os problemas decorrem de uma incompatibilidade entre a forma como o middleware de autenticação e o manipulador de buckets processam os caminhos, especificamente em relação a caracteres codificados em percentual e segmentos de ponto.
Detalhes técnicos incluem:
- Correspondência de Curingas de Caminho: A função `glob.Compile()` é chamada sem um separador, fazendo com que o curinga `*` corresponda além dos limites do diretório (incluindo `/`), o que permite que as solicitações correspondam a rotas abertas enquanto visam caminhos protegidos.
- Bypass de Barra Codificada em Percentual: Ocorre uma incompatibilidade onde o middleware de autenticação usa o caminho codificado (via `r.URL.RequestURI()`), enquanto o manipulador de buckets usa o caminho decodificado (`r.URL.Path`). Um invasor pode usar `%2F` para fazer com que um caminho pareça um único segmento para o autenticador, mas múltiplos segmentos para o manipulador, ignorando as restrições.
- Travessia de Caminho (Path Traversal): Ao usar padrões de prefixo com `**` (ex: `/open/**`), a falta de normalização de caminho permite a travessia de segmentos de ponto (ex: `/open/../restricted/`). O middleware de autenticação corresponde o caminho bruto ao prefixo aberto, enquanto o manipulador de buckets processa o caminho resolvido, concedendo acesso a namespaces restritos.
**Recomendações**
Atualize o s3-proxy para a versão 0.0.0-20260424211602-1320e4abd46a ou posterior.
Como mitigação temporária, revise as definições de caminhos de recursos e substitua `*` por `**` apenas onde a correspondência de múltiplos segmentos for explicitamente pretendida, e evite usar padrões de prefixo com `**` para rotas abertas se a normalização de caminho não for garantida.