Cookie – SameSite Flag

“SameSite” cookie bayrağı, CSRF zafiyetlerinin önüne geçilmesi amacıyla ortaya çıkmış, tarayıcı tabanlı bir güvenlik önlemidir. Genel çalışma mantığı, web uygulamalarına ait cookie bilgisinin, aynı tarayıcı üzerinde çalışan farklı bir uygulama tarafından kullanılarak istek gönderilmesini önlemeye yöneliktir.

“SameSite” bayrağı iki farklı değer ile tanımlanabilmektedir. Bunlar;

  • Strict: Kuralın en katı hali ile uygulanması gerektiğini belirten değerdir. Hiçbir koşulda uygulama cookie değerinin, farklı bir origine gönderilmemesini sağlamaktadır.

  • Lax: Bazı Cross-Site istekler esnasında cookie gönderilmesine izin verilen bayrak değeridir. Bu noktada bahsi geçen Cross-Site istekler, “GET” istek türüne sahip ve “Top-Level” düzeyinde olmak zorundadır. (“Top-Level” ifadesi, adres çubuğu değişimi sonucunda istek gönderilmesi olarak tanımlanabilir) “iframes”, “images” veya “XMLHttpRequests” yöntemleri ile gönderilen Cross-Site istekler içerisinde ise cookie bilgisi bulunmayacaktır.

Aşağıdaki tablo içerisinde, hangi Cross-Site istek koşullarında cookie bilgisinin gönderilip/gönderilemeyeceği görülebilmektedir.

İstek Türü Örnek Kod Bayrak Türleri
link <a href=”….”> none, Lax
prerender <link rel=”prerender” href=”…”> none, Lax
Form Get <form method=”get” action=”…”> none, Lax
Form Post <form method=”post” action=”…”> none
iframe <iframe src=”…”> none
ajax $.get(‘…’) none
image <img src=”…”> none

Görüleceği üzere “SameSite” bayrağının “none” olduğu tüm durumlarda, Cross-Site istekler içerisinde cookie bilgisi gönderilebilmektedir.

“SameSite” bayrak ifadesinin “lax” değerine sahip olduğu durumlarda ise Cross-Site isteklerin kısıtlı koşullarda cookie değeri ile birlikte gönderilebildiği görülmektedir.

“SameSite” bayrak ifadesinin “strict” değerine sahip olduğu durumlarda ise Cross-Site istekler ile hiçbir şekilde cookie bilgisinin gönderilemeyeceği görülmektedir.

Tüm bu bilgiler doğrultusunda, “SameSite” flag yöntemi ile CSRF zafiyetlerine karşın tarayıcı tabanlı bir güvenlik önlemi alınabileceği görülmektedir. “SameSite” özelliğinin tarayıcılar tarafından desteklendiği versiyonlar aşağıdaki şekildedir.

Yazar: Ahmet Akan

2016 Karabük Üniversitesi Bilgisayar Mühendisliği Mezunu. Kariyerine Uygulama Güvenliği Analisti olarak başladı ve bu alanda görev almaya devam etmekte.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir