PT-2020-17573 · Rust · Async-H1
Publicado
2020-12-17
·
Atualizado
2022-05-24
·
CVE-2020-36202
CVSS v3.1
6.1
Média
| Vetor | AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
Nome do software vulnerável e versões afetadas
Versões do async-h1 anteriores à 2.3.0
Descrição
Foi detectada uma falha no crate async-h1 que permite a ocorrência de “request smuggling” quando utilizado atrás de um proxy reverso. Isso afeta qualquer servidor web que utilize o async-h1 atrás de um proxy reverso, incluindo todas as aplicações Tide desse tipo. Se o servidor não ler o corpo de uma solicitação que seja mais longo do que um determinado comprimento de buffer, o async-h1 tentará ler uma solicitação subsequente a partir do conteúdo do corpo, começando nesse deslocamento dentro do corpo. Isso pode ser explorado por um invasor para criar uma solicitação de forma que o corpo contenha uma solicitação que não seria detectada por um proxy reverso, permitindo-lhe falsificar cabeçalhos forwarded/x-forwarded. Se um aplicativo confiar na autenticidade desses cabeçalhos, ele poderá ser enganado pela solicitação contrabandeada. Outra preocupação potencial é que, se um proxy reverso estiver enviando múltiplas solicitações de clientes HTTP pela mesma conexão keep-alive, seria possível que a solicitação contrabandeada especificasse um conteúdo longo e capturasse a solicitação de outro usuário em seu corpo.
Recomendações
Para versões anteriores à 2.3.0, atualize para a versão 2.3.0 ou posterior para resolver o problema. Como solução temporária, considere restringir o uso do async-h1 atrás de um proxy reverso até que um patch seja aplicado. Evite usar o async-h1 em configurações onde o contrabando de solicitações possa ser explorado, como atrás de um proxy reverso com múltiplas solicitações de clientes HTTP pela mesma conexão keep-alive.
Correção
HTTP Request/Response Smuggling
XSS
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Async-H1