Referrer-Policy header’ını bir web sitesinde ayarlamak için, sunucunuzda bir HTTP header olarak Referrer-Policy değerini döndüren bir konfigürasyon eklemeniz gerekir. Örneğin, Apache kullanıyorsanız, .htaccess dosyanıza aşağıdaki satırı ekleyebilirsiniz:
Header set Referrer-Policy "no-referrer"
Bu örnekte, “no-referrer” değeri kullanılmıştır ve bu, tarayıcının hangi web sitelerinden gelindiği hakkında hiçbir bilgi göndermemesini sağlar. “no-referrer” dışında farklı değerler de kullanabilirsiniz.
Örneğin: “same-origin” veya “strict-origin” gibi. Ayrıca, Referrer-Policy header’ını dinamik olarak oluşturmak için kullandığınız programlama diline ve kullandığınız framework’e göre değişebilir.
Referrer-Policy header’ının kullanabileceği değerler şunlardır:
- no-referrer: Hiçbir referrer bilgisi gönderilmez.
- no-referrer-when-downgrade: Referrer bilgisi sadece HTTPS’den HTTP’ye yükseltilmediğinde gönderilir.
- same-origin: Sadece aynı origin’den gelen istekler için referrer bilgisi gönderilir.
- origin: Referrer bilgisi sadece origin bilgisini (protokol, host ve port) içermektedir.
- strict-origin: Aynı origin’den gelen istekler için referrer bilgisi gönderilir ve HTTPS’den HTTP’ye yükseltilmediğinde referrer bilgisi gönderilmez.
- strict-origin-when-cross-origin: Farklı origin’den gelen istekler için referrer bilgisi sadece origin bilgisini içermektedir ve HTTPS’den HTTP’ye yükseltilmediğinde referrer bilgisi gönderilmez. Aynı origin’den gelen istekler için ise tam referrer bilgisi gönderilir.
- unsafe-url: Tam referrer bilgisi her zaman gönderilir.
Referrer-Policy ne işe yarar?
Referrer-Policy header’ı, tarayıcının gönderdiği HTTP referrer bilgisini kontrol etmek için kullanılır. Referrer, bir kullanıcının bir web sayfasından başka bir web sayfasına geçiş yaptığında, tarayıcının hangi sayfadan geldiğini belirten bilgidir. Bu bilgi genellikle link takip ve analitik amaçları için kullanılır, ancak bazen güvenlik açıklarına yol açabilir. Örneğin, bir siteye giriş yaptıktan sonra bir kullanıcının session bilgisiyle birlikte referrer bilgisi de gönderilebilir, bu da session hijacking gibi saldırıların gerçekleştirilmesine olanak tanıyabilir.
Referrer-Policy header’ı ile, tarayıcının hangi referrer bilgisini göndereceği kontrol edilebilir.
Örneğin: “no-referrer” değeri kullanıldığında tarayıcı hiçbir referrer bilgisi göndermez, “same-origin” kullanıldığında ise sadece aynı origin’den gelen referrer bilgisi gönderilir. Bu sayede, sitenizdeki güvenlik açıklarını azaltabilirsiniz.