hop-by-hop headers
Last updated
Last updated
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
RootedCON é o evento de cibersegurança mais relevante na Espanha e um dos mais importantes na Europa. Com a missão de promover o conhecimento técnico, este congresso é um ponto de encontro fervente para profissionais de tecnologia e cibersegurança em todas as disciplinas.
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 em 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 na RFC 2616. Cabeçalhos adicionais podem ser designados como hop-by-hop através do cabeçalho Connection
.
O gerenciamento inadequado de 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.
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 de 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:
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 trate X-Forwarded-For
como hop-by-hop.
O proxy mal configurado encaminha a solicitação para a aplicação web sem o cabeçalho X-Forwarded-For
falsificado.
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.
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.
RootedCON é o evento de cibersegurança mais relevante na Espanha e um dos mais importantes na Europa. Com a missão de promover o conhecimento técnico, este congresso é um ponto de encontro fervente para profissionais de tecnologia e cibersegurança em todas as disciplinas.
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)