hop-by-hop headers
Reading time: 4 minutes
tip
Aprenda e pratique Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: 
HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure: 
HackTricks Training Azure Red Team Expert (AzRTE)
Supporte o HackTricks
- Confira os planos de assinatura!
 - Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
 - Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.
 
Este é um resumo do post https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers
Os cabeçalhos hop-by-hop são específicos para uma única conexão de nível de transporte, usados principalmente no HTTP/1.1 para gerenciar dados entre dois nós (como cliente-proxy ou proxy-proxy), e não devem ser encaminhados. Os cabeçalhos hop-by-hop padrão incluem Keep-Alive, Transfer-Encoding, TE, Connection, Trailer, Upgrade, Proxy-Authorization e Proxy-Authenticate, conforme definido em RFC 2616. Cabeçalhos adicionais podem ser designados como hop-by-hop através do cabeçalho Connection.
Abusando dos Cabeçalhos Hop-by-Hop
O gerenciamento inadequado dos cabeçalhos hop-by-hop por proxies pode levar a problemas de segurança. Embora se espere que os proxies removam esses cabeçalhos, nem todos o fazem, criando vulnerabilidades potenciais.
Testando o Tratamento de Cabeçalhos Hop-by-Hop
O tratamento de cabeçalhos hop-by-hop pode ser testado observando mudanças nas respostas do servidor quando cabeçalhos específicos são marcados como hop-by-hop. Ferramentas e scripts podem automatizar esse processo, identificando como os proxies gerenciam esses cabeçalhos e potencialmente descobrindo configurações incorretas ou comportamentos de proxy.
Abusar dos cabeçalhos hop-by-hop pode levar a várias implicações de segurança. Abaixo estão alguns exemplos demonstrando como esses cabeçalhos podem ser manipulados para potenciais ataques:
Contornando Controles de Segurança com X-Forwarded-For
Um atacante pode manipular o cabeçalho X-Forwarded-For para contornar controles de acesso baseados em IP. Este cabeçalho é frequentemente usado por proxies para rastrear o endereço IP de origem de um cliente. No entanto, se um proxy tratar esse cabeçalho como hop-by-hop e o encaminhar sem validação adequada, um atacante pode falsificar seu endereço IP.
Cenário de Ataque:
- O atacante envia uma solicitação HTTP para uma aplicação web atrás de um proxy, incluindo um endereço IP falso no cabeçalho 
X-Forwarded-For. - O atacante também inclui o cabeçalho 
Connection: close, X-Forwarded-For, solicitando que o proxy trateX-Forwarded-Forcomo hop-by-hop. - O proxy mal configurado encaminha a solicitação para a aplicação web sem o cabeçalho 
X-Forwarded-Forfalsificado. - A aplicação web, não vendo o cabeçalho original 
X-Forwarded-For, pode considerar a solicitação como vindo diretamente de um proxy confiável, potencialmente permitindo acesso não autorizado. 
Envenenamento de Cache via Injeção de Cabeçalho Hop-by-Hop
Se um servidor de cache armazenar incorretamente conteúdo com base em cabeçalhos hop-by-hop, um atacante poderia injetar cabeçalhos maliciosos para envenenar o cache. Isso serviria conteúdo incorreto ou malicioso para usuários que solicitam o mesmo recurso.
Cenário de Ataque:
- Um atacante envia uma solicitação para uma aplicação web com um cabeçalho hop-by-hop que não deve ser armazenado em cache (por exemplo, 
Connection: close, Cookie). - O servidor de cache mal configurado não remove o cabeçalho hop-by-hop e armazena a resposta específica para a sessão do atacante.
 - Usuários futuros que solicitam o mesmo recurso recebem a resposta em cache, que foi adaptada para o atacante, potencialmente levando ao sequestro de sessão ou exposição de informações sensíveis.
 
tip
Aprenda e pratique Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: 
HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure: 
HackTricks Training Azure Red Team Expert (AzRTE)
Supporte o HackTricks
- Confira os planos de assinatura!
 - Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
 - Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.
 
HackTricks