hop-by-hop headers
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
RootedCON es el evento de ciberseguridad más relevante en España y uno de los más importantes en Europa. Con la misión de promover el conocimiento técnico, este congreso es un punto de encuentro vibrante para profesionales de la tecnología y la ciberseguridad en todas las disciplinas.
Este es un resumen de la publicación https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers
Los encabezados hop-by-hop son específicos de una única conexión a nivel de transporte, utilizados principalmente en HTTP/1.1 para gestionar datos entre dos nodos (como cliente-proxy o proxy-proxy), y no están destinados a ser reenviados. Los encabezados hop-by-hop estándar incluyen Keep-Alive
, Transfer-Encoding
, TE
, Connection
, Trailer
, Upgrade
, Proxy-Authorization
y Proxy-Authenticate
, según lo definido en RFC 2616. Encabezados adicionales pueden ser designados como hop-by-hop a través del encabezado Connection
.
La gestión inadecuada de los encabezados hop-by-hop por parte de los proxies puede llevar a problemas de seguridad. Si bien se espera que los proxies eliminen estos encabezados, no todos lo hacen, creando vulnerabilidades potenciales.
El manejo de los encabezados hop-by-hop se puede probar observando cambios en las respuestas del servidor cuando se marcan encabezados específicos como hop-by-hop. Herramientas y scripts pueden automatizar este proceso, identificando cómo los proxies gestionan estos encabezados y potencialmente descubriendo configuraciones incorrectas o comportamientos de proxy.
Abusar de los encabezados hop-by-hop puede llevar a diversas implicaciones de seguridad. A continuación se presentan un par de ejemplos que demuestran cómo estos encabezados pueden ser manipulados para ataques potenciales:
X-Forwarded-For
Un atacante puede manipular el encabezado X-Forwarded-For
para eludir controles de acceso basados en IP. Este encabezado es a menudo utilizado por proxies para rastrear la dirección IP de origen de un cliente. Sin embargo, si un proxy trata este encabezado como hop-by-hop y lo reenvía sin la validación adecuada, un atacante puede suplantar su dirección IP.
Escenario de Ataque:
El atacante envía una solicitud HTTP a una aplicación web detrás de un proxy, incluyendo una dirección IP falsa en el encabezado X-Forwarded-For
.
El atacante también incluye el encabezado Connection: close, X-Forwarded-For
, lo que lleva al proxy a tratar X-Forwarded-For
como hop-by-hop.
El proxy mal configurado reenvía la solicitud a la aplicación web sin el encabezado X-Forwarded-For
suplantado.
La aplicación web, al no ver el encabezado original X-Forwarded-For
, podría considerar la solicitud como proveniente directamente de un proxy de confianza, permitiendo potencialmente el acceso no autorizado.
Si un servidor de caché almacena incorrectamente contenido basado en encabezados hop-by-hop, un atacante podría inyectar encabezados maliciosos para envenenar la caché. Esto serviría contenido incorrecto o malicioso a los usuarios que solicitan el mismo recurso.
Escenario de Ataque:
Un atacante envía una solicitud a una aplicación web con un encabezado hop-by-hop que no debería ser almacenado en caché (por ejemplo, Connection: close, Cookie
).
El servidor de caché mal configurado no elimina el encabezado hop-by-hop y almacena la respuesta específica para la sesión del atacante.
Los futuros usuarios que soliciten el mismo recurso reciben la respuesta en caché, que fue adaptada para el atacante, lo que podría llevar al secuestro de sesión o la exposición de información sensible.
RootedCON es el evento de ciberseguridad más relevante en España y uno de los más importantes en Europa. Con la misión de promover el conocimiento técnico, este congreso es un punto de encuentro vibrante para profesionales de la tecnología y la ciberseguridad en todas las disciplinas.
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)