hacktricks/pentesting-web/abusing-hop-by-hop-headers.md

9.6 KiB

hop-by-hop headers

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

рдпрд╣ рдкреЛрд╕реНрдЯ рдХрд╛ рд╕рд╛рд░рд╛рдВрд╢ рд╣реИ https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers

Hop-by-hop headers рдПрдХрд▓ рдкрд░рд┐рд╡рд╣рди-рд╕реНрддрд░реАрдп рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛрддреЗ рд╣реИрдВ, рдЬреЛ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ HTTP/1.1 рдореЗрдВ рджреЛ рдиреЛрдбреНрд╕ (рдЬреИрд╕реЗ рдХреНрд▓рд╛рдЗрдВрдЯ-рдкреНрд░реЙрдХреНрд╕реА рдпрд╛ рдкреНрд░реЙрдХреНрд╕реА-рдкреНрд░реЙрдХреНрд╕реА) рдХреЗ рдмреАрдЪ рдбреЗрдЯрд╛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЗрдиреНрд╣реЗрдВ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдорд╛рдирдХ hop-by-hop headers рдореЗрдВ Keep-Alive, Transfer-Encoding, TE, Connection, Trailer, Upgrade, Proxy-Authorization, рдФрд░ Proxy-Authenticate рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЬреИрд╕рд╛ рдХрд┐ RFC 2616 рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЕрддрд┐рд░рд┐рдХреНрдд headers рдХреЛ Connection header рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ hop-by-hop рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

Hop-by-Hop Headers рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ

рдкреНрд░реЙрдХреНрд╕рд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ hop-by-hop headers рдХрд╛ рдЕрдиреБрдЪрд┐рдд рдкреНрд░рдмрдВрдзрди рд╕реБрд░рдХреНрд╖рд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред рдЬрдмрдХрд┐ рдкреНрд░реЙрдХреНрд╕рд┐рдпреЛрдВ рд╕реЗ рдЕрдкреЗрдХреНрд╖рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рд╡реЗ рдЗрди headers рдХреЛ рд╣рдЯрд╛ рджреЗрдВ, рд╕рднреА рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддреЗ, рдЬрд┐рд╕рд╕реЗ рд╕рдВрднрд╛рд╡рд┐рдд рдХрдордЬреЛрд░рд┐рдпрд╛рдБ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИрдВред

Hop-by-Hop Header рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг

рдЬрдм рд╡рд┐рд╢рд┐рд╖реНрдЯ headers рдХреЛ hop-by-hop рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рд░реНрд╡рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдХрд░рдХреЗ hop-by-hop headers рдХреА рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдкрдХрд░рдг рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдкрд╣рдЪрд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдкреНрд░реЙрдХреНрд╕реА рдЗрди headers рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХреИрд╕реЗ рдХрд░рддреА рд╣реИ рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЧрд▓рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдпрд╛ рдкреНрд░реЙрдХреНрд╕реА рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

Hop-by-hop headers рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рд╡рд┐рднрд┐рдиреНрди рд╕реБрд░рдХреНрд╖рд╛ рдирд┐рд╣рд┐рддрд╛рд░реНрдереЛрдВ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред рдиреАрдЪреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ рдЬреЛ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдХреИрд╕реЗ рдЗрди headers рдХреЛ рд╕рдВрднрд╛рд╡рд┐рдд рд╣рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╣реЗрд░рдлреЗрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

X-Forwarded-For рдХреЗ рд╕рд╛рде рд╕реБрд░рдХреНрд╖рд╛ рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдирд╛

рдПрдХ рд╣рдорд▓рд╛рд╡рд░ X-Forwarded-For header рдХреЛ рд╣реЗрд░рдлреЗрд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ IP-рдЖрдзрд╛рд░рд┐рдд рдкрд╣реБрдВрдЪ рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдЗрд╕ header рдХрд╛ рдЕрдХреНрд╕рд░ рдкреНрд░реЙрдХреНрд╕рд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рдореВрд▓ IP рдкрддреЗ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рдПрдХ рдкреНрд░реЙрдХреНрд╕реА рдЗрд╕ header рдХреЛ hop-by-hop рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирддреА рд╣реИ рдФрд░ рдЗрд╕реЗ рдЙрдЪрд┐рдд рд╕рддреНрдпрд╛рдкрди рдХреЗ рдмрд┐рдирд╛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рддреА рд╣реИ, рддреЛ рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдЕрдкрдиреЗ IP рдкрддреЗ рдХреЛ рд╕реНрдкреВрдл рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╣рдорд▓рд╛ рдкрд░рд┐рджреГрд╢реНрдп:

  1. рд╣рдорд▓рд╛рд╡рд░ рдПрдХ HTTP рдЕрдиреБрд░реЛрдз рдХреЛ рдПрдХ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рднреЗрдЬрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдкреНрд░реЙрдХреНрд╕реА рдХреЗ рдкреАрдЫреЗ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ X-Forwarded-For header рдореЗрдВ рдПрдХ рдирдХрд▓реА IP рдкрддрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред
  2. рд╣рдорд▓рд╛рд╡рд░ Connection: close, X-Forwarded-For header рднреА рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдкреНрд░реЙрдХреНрд╕реА рдХреЛ X-Forwarded-For рдХреЛ hop-by-hop рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  3. рдЧрд▓рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреА рдЧрдИ рдкреНрд░реЙрдХреНрд╕реА рдЕрдиреБрд░реЛрдз рдХреЛ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрд┐рдирд╛ рд╕реНрдкреВрдл рдХрд┐рдП рдЧрдП X-Forwarded-For header рдХреЗ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рддреА рд╣реИред
  4. рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди, рдореВрд▓ X-Forwarded-For header рдХреЛ рди рджреЗрдЦрдХрд░, рдЕрдиреБрд░реЛрдз рдХреЛ рд╕реАрдзреЗ рдПрдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдкреНрд░реЙрдХреНрд╕реА рд╕реЗ рдЖрдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рди рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЕрдирдзрд┐рдХреГрдд рдкрд╣реБрдВрдЪ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓ рд╕рдХрддреА рд╣реИред

Hop-by-Hop Header рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреИрд╢ рдкреЙрдЗрдЬрд╝рдирд┐рдВрдЧ

рдпрджрд┐ рдПрдХ рдХреИрд╢ рд╕рд░реНрд╡рд░ hop-by-hop headers рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдХреИрд╢ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рд╣рд╛рдирд┐рдХрд╛рд░рдХ headers рдХреЛ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдХреИрд╢ рдХреЛ рдЬрд╝рд╣рд░ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдЗрд╕рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рд╣реА рд╕рдВрд╕рд╛рдзрди рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╕рдордп рдЧрд▓рдд рдпрд╛ рд╣рд╛рдирд┐рдХрд╛рд░рдХ рд╕рд╛рдордЧреНрд░реА рдорд┐рд▓ рд╕рдХрддреА рд╣реИред

рд╣рдорд▓рд╛ рдкрд░рд┐рджреГрд╢реНрдп:

  1. рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдПрдХ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдПрдХ hop-by-hop header рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз рднреЗрдЬрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдХреИрд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдЬреИрд╕реЗ, Connection: close, Cookie)ред
  2. рдЦрд░рд╛рдм рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреИрд╢ рд╕рд░реНрд╡рд░ hop-by-hop header рдХреЛ рдирд╣реАрдВ рд╣рдЯрд╛рддрд╛ рд╣реИ рдФрд░ рд╣рдорд▓рд╛рд╡рд░ рдХреЗ рд╕рддреНрд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХреИрд╢ рдХрд░рддрд╛ рд╣реИред
  3. рднрд╡рд┐рд╖реНрдп рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬрдм рдЙрд╕реА рд╕рдВрд╕рд╛рдзрди рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдХреИрд╢ рдХреА рдЧрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдорд┐рд▓рддреА рд╣реИ, рдЬреЛ рд╣рдорд▓рд╛рд╡рд░ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХреА рдЧрдИ рдереА, рдЬрд┐рд╕рд╕реЗ рд╕рддреНрд░ рдЕрдкрд╣рд░рдг рдпрд╛ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}