hacktricks/pentesting-web/abusing-hop-by-hop-headers.md
2024-02-10 18:14:16 +00:00

6.2 KiB
Raw Blame History

Hop-by-hop başlıkları

AWS hackleme konusunda sıfırdan kahramana kadar öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)!

Bu, https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers adresindeki yazının bir özetidir.

Hop-by-hop başlıkları, özellikle HTTP/1.1'de iki düğüm arasında (istemci-proxy veya proxy-proxy gibi) verileri yönetmek için kullanılan, tek bir taşıma düzeyi bağlantısına özgüdür ve iletilmemesi amaçlanmıştır. Standart hop-by-hop başlıklar arasında Keep-Alive, Transfer-Encoding, TE, Connection, Trailer, Upgrade, Proxy-Authorization ve Proxy-Authenticate bulunur ve RFC 2616'da 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 Kötüye Kullanımı

Proxy'ler tarafından hop-by-hop başlıkların yanlış yönetimi güvenlik sorunlarına yol açabilir. Proxy'lerin bu başlıkları kaldırması beklenirken, tüm proxy'ler bunu yapmaz ve potansiyel güvenlik açıkları oluşturur.

Hop-by-Hop Başlık İşleme Testi

Hop-by-hop başlıkların işlenmesi, belirli başlıklar hop-by-hop olarak işaretlendiğinde sunucu yanıtlarında meydana gelen değişikliklerin gözlemlenerek test edilebilir. Araçlar ve komut dosyaları bu süreci otomatikleştirebilir, proxy'lerin bu başlıkları nasıl yönettiğini belirleyebilir ve yanlış yapılandırmaları veya proxy davranışlarını ortaya çıkarabilir.

Hop-by-hop başlıklarının kötüye kullanılması ç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 Atlama

Bir saldırgan, IP tabanlı erişim kontrollerini atlatabilmek için X-Forwarded-For başlığını manipüle edebilir. Bu başlık, proxy'lerin istemcinin kaynak IP adresini takip etmek için sıklıkla kullandığı bir başlıktır. Ancak, bir proxy bu başlığı hop-by-hop olarak işlemeyi ve doğrulama yapmadan iletmeyi tercih ederse, bir saldırgan IP adresini sahteler.

Saldırı Senaryosu:

  1. Saldırgan, bir proxy'nin arkasındaki bir web uygulamasına sahte bir IP adresini X-Forwarded-For başlığında içeren bir HTTP isteği gönderir.
  2. Saldırgan ayrıca Connection: close, X-Forwarded-For başlığını da ekler, bu da proxy'nin X-Forwarded-For'u hop-by-hop olarak işlemesine neden olur.
  3. Yanlış yapılandırılmış proxy, sahtelenmiş X-Forwarded-For başlığı olmadan isteği web uygulamasına iletiyor.
  4. Web uygulaması, orijinal X-Forwarded-For başlığını görmeyerek isteği doğrudan güvenilir bir proxyden geliyormuş gibi değerlendirebilir ve yetkisiz erişime izin verebilir.

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

Bir önbellek sunucusu, hop-by-hop başlıklara dayalı olarak içeriği yanlış bir şekilde önbelleğe alıyorsa, bir saldırgan kötü amaçlı başlıklar enjekte ederek önbelleği zehirleyebilir. Bu, aynı kaynağı isteyen kullanıcılara yanlış veya kötü amaçlı içerik sunar.

Saldırı Senaryosu:

  1. Bir saldırgan, önbelleğe alınmaması gereken bir hop-by-hop başlıkla bir web uygulamasına bir istek gönderir (örneğin, Connection: close, Cookie).
  2. Kötü yapılandırılmış önbellek sunucusu hop-by-hop başlığı kaldırmaz ve saldırganın oturumuna özgü yanıtı önbelleğe alır.
  3. Aynı kaynağı isteyen gelecekteki kullanıcılar, saldırgan için özelleştirilmiş önbelleğe alınmış yanıtı alır, bu da oturum ele geçirmeye veya hassas bilgilerin ortaya çıkmasına yol açabilir.
AWS hackleme konusunda sıfırdan kahramana kadar öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)!