hop-by-hop headers

Reading time: 4 minutes

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks

Ceci est un résumé du post https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers

Les en-tĂȘtes hop-by-hop sont spĂ©cifiques Ă  une seule connexion de niveau transport, utilisĂ©s principalement dans HTTP/1.1 pour gĂ©rer les donnĂ©es entre deux nƓuds (comme client-proxy ou proxy-proxy), et ne sont pas destinĂ©s Ă  ĂȘtre transfĂ©rĂ©s. Les en-tĂȘtes hop-by-hop standard incluent Keep-Alive, Transfer-Encoding, TE, Connection, Trailer, Upgrade, Proxy-Authorization, et Proxy-Authenticate, comme dĂ©fini dans RFC 2616. Des en-tĂȘtes supplĂ©mentaires peuvent ĂȘtre dĂ©signĂ©s comme hop-by-hop via l'en-tĂȘte Connection.

Abusing Hop-by-Hop Headers

Une gestion incorrecte des en-tĂȘtes hop-by-hop par les proxies peut entraĂźner des problĂšmes de sĂ©curitĂ©. Bien que les proxies soient censĂ©s supprimer ces en-tĂȘtes, tous ne le font pas, crĂ©ant des vulnĂ©rabilitĂ©s potentielles.

Testing for Hop-by-Hop Header Handling

La gestion des en-tĂȘtes hop-by-hop peut ĂȘtre testĂ©e en observant les changements dans les rĂ©ponses du serveur lorsque des en-tĂȘtes spĂ©cifiques sont marquĂ©s comme hop-by-hop. Des outils et des scripts peuvent automatiser ce processus, identifiant comment les proxies gĂšrent ces en-tĂȘtes et dĂ©couvrant potentiellement des erreurs de configuration ou des comportements de proxy.

L'abus des en-tĂȘtes hop-by-hop peut entraĂźner diverses implications de sĂ©curitĂ©. Voici quelques exemples dĂ©montrant comment ces en-tĂȘtes peuvent ĂȘtre manipulĂ©s pour des attaques potentielles :

Bypassing Security Controls with X-Forwarded-For

Un attaquant peut manipuler l'en-tĂȘte X-Forwarded-For pour contourner les contrĂŽles d'accĂšs basĂ©s sur l'IP. Cet en-tĂȘte est souvent utilisĂ© par les proxies pour suivre l'adresse IP d'origine d'un client. Cependant, si un proxy traite cet en-tĂȘte comme hop-by-hop et le transfĂšre sans validation appropriĂ©e, un attaquant peut usurper son adresse IP.

Scénario d'attaque :

  1. L'attaquant envoie une requĂȘte HTTP Ă  une application web derriĂšre un proxy, incluant une fausse adresse IP dans l'en-tĂȘte X-Forwarded-For.
  2. L'attaquant inclut Ă©galement l'en-tĂȘte Connection: close, X-Forwarded-For, incitant le proxy Ă  traiter X-Forwarded-For comme hop-by-hop.
  3. Le proxy mal configurĂ© transfĂšre la requĂȘte Ă  l'application web sans l'en-tĂȘte X-Forwarded-For usurpĂ©.
  4. L'application web, ne voyant pas l'en-tĂȘte X-Forwarded-For original, pourrait considĂ©rer la requĂȘte comme venant directement d'un proxy de confiance, permettant potentiellement un accĂšs non autorisĂ©.

Cache Poisoning via Hop-by-Hop Header Injection

Si un serveur de cache met incorrectement en cache du contenu basĂ© sur des en-tĂȘtes hop-by-hop, un attaquant pourrait injecter des en-tĂȘtes malveillants pour empoisonner le cache. Cela servirait un contenu incorrect ou malveillant aux utilisateurs demandant la mĂȘme ressource.

Scénario d'attaque :

  1. Un attaquant envoie une requĂȘte Ă  une application web avec un en-tĂȘte hop-by-hop qui ne devrait pas ĂȘtre mis en cache (par exemple, Connection: close, Cookie).
  2. Le serveur de cache mal configurĂ© ne supprime pas l'en-tĂȘte hop-by-hop et met en cache la rĂ©ponse spĂ©cifique Ă  la session de l'attaquant.
  3. Les futurs utilisateurs demandant la mĂȘme ressource reçoivent la rĂ©ponse mise en cache, qui Ă©tait adaptĂ©e pour l'attaquant, ce qui pourrait entraĂźner un dĂ©tournement de session ou une exposition d'informations sensibles.

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks