HTTP Connection Contamination
Este é um resumo do post: https://portswigger.net/research/http-3-connection-contamination. Verifique para mais detalhes!
Navegadores da web podem reutilizar uma única conexão HTTP/2+ para diferentes sites por meio da coalescência de conexão HTTP, desde que compartilhem endereços IP e um certificado TLS comum. No entanto, isso pode entrar em conflito com o roteamento de primeira solicitação em proxies reversos, onde solicitações subsequentes são direcionadas ao back-end determinado pela primeira solicitação. Esse encaminhamento incorreto pode levar a vulnerabilidades de segurança, especialmente quando combinado com certificados TLS curinga e domínios como *.example.com
.
Por exemplo, se wordpress.example.com
e secure.example.com
forem ambos servidos pelo mesmo proxy reverso e tiverem um certificado curinga comum, a coalescência de conexão do navegador poderia fazer com que as solicitações para secure.example.com
fossem processadas incorretamente pelo back-end do WordPress, explorando vulnerabilidades como XSS.
Para observar a coalescência de conexão, pode-se usar a guia de Rede do Chrome ou ferramentas como o Wireshark. Aqui está um trecho para teste:
A ameaça está atualmente limitada devido à raridade do roteamento do primeiro pedido e à complexidade do HTTP/2. No entanto, as mudanças propostas no HTTP/3, que relaxam o requisito de correspondência de endereço IP, poderiam ampliar a superfície de ataque, tornando os servidores com um certificado curinga mais vulneráveis sem a necessidade de um ataque MITM.
As melhores práticas incluem evitar o roteamento do primeiro pedido em proxies reversos e ter cautela com certificados TLS curinga, especialmente com o advento do HTTP/3. Testes regulares e consciência dessas vulnerabilidades complexas e interconectadas são cruciais para manter a segurança na web.
Last updated