CyberGlossary

Vulnerabilidades

HTTP Response Splitting

Também conhecido como: Injeção CRLF em HTTP, Injeção de cabeçalhos HTTP

Definição

Vulnerabilidade de injeção em que caracteres CR/LF não confiáveis na entrada do utilizador forçam o servidor a emitir respostas HTTP adicionais controladas pelo atacante.

O HTTP response splitting (injeção CRLF) ocorre quando uma aplicação reflete entrada do utilizador em cabeçalhos de resposta — tipicamente Location, Set-Cookie ou cabeçalhos personalizados — sem filtrar retornos de carro e quebras de linha. Injetando %0d%0a, o atacante termina o bloco original de cabeçalhos e introduz cabeçalhos, linhas de estado ou até uma segunda resposta completa. As consequências incluem envenenamento de cache, XSS, fixação de sessão e fuga de credenciais para intermediários. CWE-113 e CVE-2004-0500 evidenciaram o impacto. Mitigações: rejeitar ou escapar CR/LF nos valores de cabeçalho, usar frameworks que proíbem quebras de linha em APIs de cabeçalho e preferir helpers de redireção que codificam os seus inputs.

Exemplos

  • Definir um cabeçalho Location a partir de um parâmetro de utilizador com %0d%0a para injetar Set-Cookie.
  • Dividir uma resposta para que a cache armazene um corpo controlado pelo atacante para /home.

Termos relacionados