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

5.8 KiB
Raw Blame History

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 %}

Bu, https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers gönderisinin bir özetidir.

Hop-by-hop başlıkları, iki düğüm (örneğin, istemci-proxy veya proxy-proxy) arasındaki verileri yönetmek için HTTP/1.1'de kullanılan, tek bir taşıma düzeyi bağlantısına özgü başlıklardır ve iletilmek üzere tasarlanmamıştır. Standart hop-by-hop başlıkları arasında Keep-Alive, Transfer-Encoding, TE, Connection, Trailer, Upgrade, Proxy-Authorization ve Proxy-Authenticate yer alır; bunlar RFC 2616 ile tanımlanmıştır. Ek başlıklar, Connection başlığı aracılığıyla hop-by-hop olarak belirlenebilir.

Hop-by-Hop Başlıklarının Suistimali

Proxy'ler tarafından hop-by-hop başlıklarının yanlış yönetimi güvenlik sorunlarına yol açabilir. Proxy'lerin bu başlıkları kaldırması beklenirken, hepsi bunu yapmadığı için potansiyel zafiyetler oluşabilir.

Hop-by-Hop Başlık Yönetimini Test Etme

Hop-by-hop başlıklarının yönetimi, belirli başlıklar hop-by-hop olarak işaretlendiğinde sunucu yanıtlarındaki değişiklikleri gözlemleyerek test edilebilir. Araçlar ve betikler bu süreci otomatikleştirerek, proxy'lerin bu başlıkları nasıl yönettiğini belirleyebilir ve potansiyel yanlış yapılandırmaları veya proxy davranışlarını ortaya çıkarabilir.

Hop-by-hop başlıklarının suistimali çeşitli güvenlik sonuçlarına yol açabilir. Aşağıda, bu başlıkların potansiyel saldırılar için nasıl manipüle edilebileceğini gösteren birkaç örnek bulunmaktadır:

X-Forwarded-For ile Güvenlik Kontrollerini Aşma

Bir saldırgan, IP tabanlı erişim kontrollerini aşmak için X-Forwarded-For başlığını manipüle edebilir. Bu başlık, genellikle proxy'ler tarafından bir istemcinin kaynak IP adresini izlemek için kullanılır. Ancak, bir proxy bu başlığı hop-by-hop olarak ele alır ve uygun doğrulama olmadan iletirse, bir saldırgan IP adresini taklit edebilir.

Saldırı Senaryosu:

  1. Saldırgan, X-Forwarded-For başlığında sahte bir IP adresi içeren bir HTTP isteği gönderir.
  2. Saldırgan ayrıca Connection: close, X-Forwarded-For başlığını ekler, bu da proxy'nin X-Forwarded-For'u hop-by-hop olarak ele almasını sağlar.
  3. Yanlış yapılandırılmış proxy, sahte X-Forwarded-For başlığı olmadan isteği web uygulamasına iletir.
  4. Web uygulaması, orijinal X-Forwarded-For başlığını görmediği için isteği güvenilir bir proxy'den geliyormuş gibi değerlendirebilir ve yetkisiz erişime izin verebilir.

Hop-by-Hop Başlık Enjeksiyonu ile Önbellek Zehirleme

Eğer bir önbellek sunucusu hop-by-hop başlıklarına dayanarak içeriği yanlış bir şekilde önbelleğe alırsa, bir saldırgan kötü niyetli başlıklar enjekte ederek önbelleği zehirleyebilir. Bu, aynı kaynağı talep eden kullanıcılara yanlış veya kötü niyetli içerik sunar.

Saldırı Senaryosu:

  1. Bir saldırgan, önbelleğe alınmaması gereken bir hop-by-hop başlığı (örneğin, Connection: close, Cookie) ile bir web uygulamasına istek gönderir.
  2. Kötü yapılandırılmış önbellek sunucusu hop-by-hop başlığını kaldırmaz ve yanıtı saldırganın oturumuna özgü olarak önbelleğe alır.
  3. Aynı kaynağı talep eden gelecekteki kullanıcılar, saldırgana özel olarak hazırlanmış önbelleğe alınmış yanıtı alır; bu da oturum kaçırma veya hassas bilgilerin ifşasına yol açabilir.

{% 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 %}