Missing Referrer-Policy Header Açıklığı (CWE-16)
Bu makalede Missing Referrer-Policy Header (CWE-16), yani Eksik Referrer-Policy Başlığı, diğer ifadeyle; Link ve Parametre Gizliliğinin Sağlanmaması açıklığı anlatılacaktır.

Açıklık Önem Derecesi:

Düşük

Açıklığın Etkisi:

Bilgi İfşası

Açıklığın Açıklaması:

Kurum web uygulaması arayüzündeki bir linkten farklı bir web uygulama sunucusuna gidildiğinde kullanıcının mevcut kurum web uygulamasındaki link ve paremetreleri farklı web uygulama sunucusuna Referrer başlığı ile gönderilmektedir. Bu durum Kişisel Verileri Koruma Kanunu'na (KVKK'ya) aykırı bir durum teşkil etmektedir. Çünkü kullanıcının gizli kalması gereken kurum web uygulama bilgileri farklı bir web uygulama sunucusuna gitmektedir ve ifşa olmaktadır.

Açıklığın Önlemi:

a) IIS Web Sunucular

IIS sunucularda konfigürasyon dosyası Web.config açılmalıdır ve httpprotocol etiketi içerisindeki customheaders etiketi içerisine gösterilen satır eklenmelidir.

<!-- GÜVENLİ YAPILANDIRMA -->

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.webServer>
        <security>
            ...
        </security>
        <httpProtocol>
            <customHeaders>
                <add name="Referrer-Policy" value="no-referrer">
                </add>
            </customHeaders>
        </httpProtocol>
    </system.webServer>
</configuration>

b) Apache Web Sunucular

Debian / Ubuntu tabanlı linux işletim sistemlerinde yer alan apache web sunucularda apache2.conf, RedHat / Centos tabanlı linux işletim sistemlerinde yer alan apache web sunucularda httpd.conf dosyası açılmalıdır ve dosya içeriğinin en altına belirtilen satır eklenmelidir.

Header set Referrer-Policy "no-referrer"

c) Nginx Web Sunucular

Nginx web sunucularda nginx.conf konfigürasyon dosyası açılmalıdır ve dosya içeriğindeki http { ... } bloğu içerisine belirtilen satır eklenmelidir.

add_header Referrer-Policy "no-referrer";

d) Tomcat v.b. Java Web Sunucular

Tomcat gibi hafif java uygulamalarını taşıyabilen servlet container'larda ya da GlashFish, JBoss, WebLogic gibi kompleks java uygulamalarını taşıyabilen servlet container'larda spring framework'ünü kullanan web uygulamalarının src/main/java/hello/ dizininde WebSecurityConfig.java adlı bir dosyasısı bulunur. Bu java dosyasında gösterilen java kod bloğuna "Eklenecek Kodlar Başlıyor" yorum satırı ile "Eklenecek Kodlar Bitti" yorum satırı arasındaki satırlar eklenmelidir:

public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {

        // Eklenecek Kodlar Başlıyor

        http
        .headers()
        .referrerPolicy(ReferrerPolicy.SAME_ORIGIN);

        // Eklenecek Kodlar Bitti

    }
}

Sonuç

En nihayetinde yapılandırma dosyasında yapılan değişiklik sonrası web sunucusu yazılımı yeniden başlatılmalıdır. Böylelikle kullanıcıların gönderdiği http / https taleplerine karşılık web sunucudan dönen http / https yanıtlarında Referrer-Policy önlemi yer alır duruma gelecektir

Yararlanılan Kaynaklar:

  • http://www.insiderattack.net/2014/04/configuring-secure-iis-response-headers.html
  • https://www.ryadel.com/en/iis-web-config-secure-http-response-headers-pass-securityheaders-io-scan/
  • https://stackoverflow.com/questions/16385541/content-security-policy-invalid-command
  • https://www.keycdn.com/blog/http-security-headers/
  • https://stackoverflow.com/questions/39502968/apache-difference-between-header-always-set-and-header-set
  • https://scotthelme.co.uk/a-new-security-header-referrer-policy/
  • https://blog.qualys.com/securitylabs/2016/01/07/open-redirection-a-simple-vulnerability-threatens-your-web-applications
  • https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-3175
  • https://blog.appcanary.com/2017/http-security-headers.html
  • https://www.netsparker.com.tr/blog/web-guvenligi/turkiyede-http-guvenlik-headerlerinin-kullanimi/
Bu yazı 25.10.2025 tarihinde, saat 07:54:52'de yazılmıştır.
Yazar : Hasan Fatih ŞİMŞEK Görüntülenme Sayısı : 15
Yorumlar
Henüz yorum girilmemiştir.
Yorum Ekle
*
* (E-posta adresiniz yayınlanmayacaktır.)
*
*

#Arşiv


#Giriş

ID :
Şifre :