← Tüm yazılar

Host Header Injection ve Web Cache Poisoning: Güvenilmeyen Başlıkların Riski

7 Eylül 2026

Host Header Injection ve Web Cache Poisoning: Güvenilmeyen Başlıkların Riski

Host Header Injection, bir uygulamanın gelen isteğin Host başlığına (veya benzeri istemci-kontrollü başlıklara) körü körüne güvenmesiyle ortaya çıkar. Host başlığı istemci tarafından gönderilir ve manipüle edilebilir; uygulama bu değeri bağlantı üretmek, yönlendirmek veya önbellek anahtarı oluşturmak için kullanırsa, saldırgan davranışı yönlendirebilir. Bu, parola sıfırlama zehirlemesinden web önbellek zehirlemesine kadar bir dizi saldırının kökündedir.

Nasıl istismar edilir?

  • Parola sıfırlama zehirlemesi: Uygulama, sıfırlama bağlantısını Host başlığından üretirse, saldırgan Host: saldirgan.example göndererek kurbana gönderilen e-postadaki bağlantıyı kendi alanına yönlendirebilir. Kurban tıklayınca sıfırlama token’ı saldırgana gider.
  • Web Cache Poisoning (önbellek zehirlemesi): Bir önbellek (CDN/ara sunucu), yanıtı belirli başlıklara göre saklarken saldırgan-kontrollü bir başlık yanıta yansıyorsa, saldırgan zararlı bir yanıtı önbelleğe “zehirleyebilir”; sonraki meşru kullanıcılar bu zehirli yanıtı alır.
  • Yönlendirme ve SSRF benzeri davranışlar: Host’a göre iç yönlendirme yapan yapılandırmalar beklenmeyen hedeflere yönelebilir.

Web Cache Poisoning neden ciddi?

Klasik saldırılar tek kurbanı etkiler; önbellek zehirlemesi ise zehirli yanıt önbellekte kaldığı sürece o yanıtı alan herkesi etkiler. Saldırgan-kontrollü bir girdi (bir başlık, bir parametre) yanıta yansıyor ve önbellek anahtarına dahil değilse, tek bir istekle çok sayıda kullanıcıya zararlı içerik dağıtılabilir.

Nasıl önlenir?

  1. Host başlığına güvenmeyin. Mutlak bağlantı üretimi ve yönlendirme için istemci Host’una değil, sunucuda yapılandırılmış güvenilir bir alan adına dayanın.
  2. İzinli host listesi kullanın. Uygulamanız yalnız bilinen alan adlarına hizmet ediyorsa, eşleşmeyen Host değerlerini reddedin.
  3. Önbellek anahtarını dikkatle tanımlayın. Yanıta yansıyan tüm girdilerin ya önbellek anahtarına dahil edilmesini ya da yansımamasını sağlayın; “önbelleklenemez” girdileri yanıta karıştırmayın.
  4. Parola sıfırlama gibi kritik bağlantıları sabit, güvenilir bir kök URL’den üretin.

Özet

Host Header Injection ve web önbellek zehirlemesi, uygulamanın istemci-kontrollü başlıklara güvenmesinden doğar. Çözüm: mutlak bağlantı ve yönlendirmeleri istemci Host’una göre değil sunucuda tanımlı güvenilir alan adına göre üretin, izinli host listesi uygulayın ve önbellek anahtarlarını, yansıyan tüm girdileri kapsayacak biçimde dikkatle tanımlayın.

Kaynaklar: PortSwigger: Host header attacks, PortSwigger: Web cache poisoning, OWASP Testing Guide.

Uygulamanız Host başlığına güveniyor mu? CyberTestify’ın taraması, keşfedilen uç noktalarda bu tür yanlış güven varsayımlarını değerlendirir.