COOKİE Nedir? Nasıl Çalışır?

Home  /  Yazılar

COOKİE Nedir? Nasıl Çalışır?

 

COOKİE

İnternette elektronik ticaret ve iş büyük ölçüde World-Wide-Web tarafından kolaylaştırılmıştır. Hiper Metin Aktarım Protokolü (HTTP), Web sunucuları ve tarayıcılar arasındaki tüm etkileşimleri taşır. HTTP durum bilgisiz olduğundan, birbirini izleyen kullanıcı ziyaretleri arasında tarayıcı-sunucu etkileşimi için sürekliliği desteklemez. HTTP’de oturum kavramı olmadan, kullanıcılar bir Web sunucusundaki bir sayfaya her eriştiklerinde bir Web sitesine yabancılardır.

Çerezler Web ‘de sürekliliği ve durumu korumak için icat edildi. Çerezler, kullanıcıyla ilgili bilgileri kodlayan metin karakter dizilerini içerir. Tanımlama bilgileri, kullanıcı tanımlama bilgisi kullanan bir Web sitesini ziyaret ederken tarayıcı aracılığıyla kullanıcının bilgisayarına (sabit disk veya RAM) gönderilir. Web sunucusu bu tanımlama bilgilerini geri alır ve kullanıcı daha sonra aynı Web sitesine döndüğünde kullanıcının bilgilerini tanımlama bilgilerinden alır. Bir tanımlama bilgisinin amacı, bilgi edinmek ve sunucu ile tarayıcı arasındaki sonraki iletişimlerde aynı bilgileri tekrar istemeden kullanmaktır. Çoğu zaman bir sunucu, sunucuda tutulan bilgi veri tabanının kullanıcıya özgü birincil anahtarı olarak kimlik numarası gibi bir işaretçiyi tutmak için bir tanımlama bilgisi ayarlar.

Teknik olarak, bir çerezin ilgili bilgileri taşımasını sağlamak zor değildir.  Bununla birlikte, hassas bilgileri çerezlerde saklamak ve iletmek güvenli değildir çünkü çerezler güvensizdir. Çerezler, okunabilir ve taklit edilebilir açık metin olarak saklanır ve iletilir.

Çerezler ilk olarak 1994 yılında Netscape firması tarafından kullanılmaya başlanmıştır. Çerezler ilk başta sadece tarayıcı geçmişindeki bilgileri saklı tutuyor ve sonradan istenildiği taktirde bilgisayardan silinebiliyordu. Ancak günümüze kadar çerezler, kullanım amacının çok daha ötesine geçmiş ve tarayıcı geçmişinden çok daha fazlasını bünyesinde tutar hale gelmiştir. Zaten çerezleri, veri toplama yöntemlerinin en önemli unsuru yapan da budur.

Şu anda, Netscape, MS Internet Explorer, GNNWorks, NetCruiser ve OmniWeb dahil olmak üzere tanımlama bilgilerini destekleyen birçok tarayıcı bulunmaktadır. Tarayıcılarda temel olarak üç çerez yönetimi modu vardır:

  • İlk mod, tüm çerezleri sormadan reddetmektir.
  • İkinci mod, tüm tanımlama bilgilerini kabul etmektir ve kullanıcılara hepsini bir kerede silme olanağı sunar.
  • Sonuncusu, kullanıcılara daha fazla seçenek sunar. Bir kullanıcı, belirlenmiş sitelerden çerezleri kabul etmeye karar verebilir.

Tanımlama bilgileri, Web’ de görüntüleme modu (örneğin, çerçeveler veya yalnızca metin), alışveriş sepeti seçimleri ve taşıma adları, parolalar, hesap numaraları veya kullanıcının makinesindeki verileri tanımlayan diğer bazı bitler gibi birçok amaç için kullanılmıştır. Çerezler, ilgili uygulamaya bağlı verileri kaydetmek ve yeniden oynatmak için genel bir mekanizma olduğundan, olası uygulamalar sonsuzdur.

TARAYICILARA GÖRE ÇEREZLER
Firefox:

Çerez, ziyaret ettiğiniz bir web sitesi tarafından bilgisayarınızda depolanan bilgilerdir. Bazı tarayıcılarda her çerez ayrı ayrı küçük dosyalar halinde tutulurken Firefox’ta tüm çerezler Firefox’un profil klasöründeki tek bir dosyasında tutulur. Çerezler genellikle ilgili web sitesine ait dil tercihiniz veya konumunuz gibi ayarlarınızı saklamak için kullanılır. Aynı siteye yeniden girdiğinizde Firefox, o siteye ait çerezleri siteye geri gönderir. Böylece site, ihtiyaçlarınıza uyacak şekilde özelleştirilmiş bilgiler sunabilir. Ayrıca çerezler, kişisel bilgileriniz (adınız, e-posta adresiniz, telefon numaranız vb.) de dahil olmak üzere birçok farklı bilgi içerebilir. Ancak, bir sitenin ulaşabileceği bilgiler sizin ona sunduklarınızla sınırlıdır. Web siteleri onlara vermediğiniz bilgilere erişemez. Ayrıca hiçbir site, bilgisayarınızdaki diğer dosyaları ulaşamaz.

Google Chrome:

Çerezler, ziyaret ettiğiniz web siteleri tarafından oluşturulan dosyalardır. Çerezler göz atma bilgilerini kaydederek çevrimiçi deneyiminizi daha kolay hale getirir. Çerezler sayesinde siteler oturumunuzu açık tutabilir, site tercihlerinizi hatırlayabilir ve size yerel olarak alakalı içerik sunabilir. İki tür çerez vardır:

  • Birinci taraf çerezleri ziyaret ettiğiniz site tarafından oluşturulur .Site, adres çubuğunda gösterilir.
  • Üçüncü taraf çerezleri diğer siteler tarafından oluşturulur. Bu siteler, ziyaret ettiğiniz web sayfasında gördüğünüz reklam veya resim gibi içeriğin bir kısmına sahiptir.
Opera:

Çerezler web sayfalarına bağlantı bilgilerini içeren küçük veri dosyalarıdır. Örneğin; çerez dosyası online alışveriş yaptığında alışveriş sepetinizdekileri kaydetmek için oluşturulabilir ya da gezindiğiniz bir sayfaya giriş yaptığında kullandığınız giriş bilgilerini saklamak için oluşturulabilir. Çerez oluşturulduğunda işlemlerin oluşumu için aşağıdaki yol izlenir:

  • İlk temasta, web sayfası özel bir bağlantı adresi içeren çerez kullanmanızı önerir. Eğer kabul ederseniz çerezler bilgisayarınıza kaydedilir.
  • adresle kuracağınız her bağlantıda tarayıcınız çerez gönderir. Çerezler tarayıcınızın davranış profilini oluşturmak için de kullanılabilir.
ÇEREZLERİN TARİHÇESİ

“Çerez” terimi, web tarayıcısı programcısı Lou Montulli  tarafından icat edildi . Bir programın aldığı ve değiştirmeden geri gönderdiği bir veri paketi olan ve Unix programcıları tarafından kullanılan ” sihirli çerez ” teriminden türetilmiştir .

Bilgisayar programcısı Lou Montulli  , Haziran 1994’te bunları web iletişiminde kullanma fikrine sahip olduğunda, sihirli çerezler bilgi işlemde zaten kullanılıyordu . O sırada, MCI için bir e-ticaret uygulaması geliştiren Netscape Communications’ın  bir çalışanıydı. Vint Cerf ve John Klensin , Netscape Communications ile teknik tartışmalarda MCI’yi temsil etti. MCI, sunucularının kısmi işlem durumlarını korumak zorunda kalmasını istemedi, bu da onları Netscape’ten bu durumu her kullanıcının bilgisayarında depolamanın bir yolunu bulmasını istemeye yöneltti. Çerezler, sanal bir alışveriş sitesini güvenilir bir şekilde uygulama sorununa bir çözüm sağladı .

John Giannandrea ile birlikte Montulli, aynı yıl ilk Netscape çerez özelliğini yazdı. 13 Ekim 1994’te yayınlanan Mosaic Netscape’in  0.9beta sürümü  çerezleri destekledi. Çerezlerin ilk kullanımı (laboratuvarlar dışında) Netscape web sitesini ziyaret edenlerin siteyi daha önce ziyaret edip etmediklerini kontrol etmekti. Montulli, 1995’te çerez teknolojisi için bir patent başvurusunda bulundu ve ABD 5774670 , 1998’de verildi. Çerezler için destek , Ekim 1995’te yayınlanan sürüm 2’de Internet Explorer’a entegre edildi .

Çerezlerin tanıtımı o zamanlar halk tarafından yaygın olarak bilinmiyordu. Özellikle, tanımlama bilgileri varsayılan olarak kabul edildi ve kullanıcılar varlıklarından haberdar edilmedi. Genel halk, Financial Times’ın 12 Şubat 1996’da kendileriyle ilgili bir makale yayınlamasından sonra tanımlama bilgilerini öğrendi . Aynı yıl, tanımlama bilgileri, özellikle potansiyel gizlilik etkileri nedeniyle medyanın çok ilgisini çekti. Çerezler, 1996 ve 1997’deki iki ABD Federal Ticaret Komisyonu duruşmasında tartışıldı .

Resmi çerez özelliklerinin geliştirilmesi zaten devam ediyordu. Özellikle, resmi bir spesifikasyonla ilgili ilk tartışmalar, www-talk posta listesinde Nisan 1995’te başladı . IETF bünyesinde özel bir çalışma grubu oluşturuldu. HTTP işlemlerinde durumu tanıtmak için iki alternatif öneri, sırasıyla Brian Behlendorf ve David Kristol tarafından önerilmişti . Ancak Kristol’ün kendisi ve Lou Montulli’nin başını çektiği grup, kısa süre sonra Netscape spesifikasyonunu başlangıç ​​noktası olarak kullanmaya karar verdi. Şubat 1996’da çalışma grubu, üçüncü taraf tanımlama bilgilerini önemli bir gizlilik tehdidi olarak tanımladı. Grup tarafından üretilen şartname sonunda RFC 2109 olarak yayınlandı. Üçüncü taraf tanımlama bilgilerine ya hiç izin verilmediğini ya da en azından varsayılan olarak etkinleştirilmediğini belirtir.

Şu anda, reklam şirketleri zaten üçüncü taraf çerezleri kullanıyordu. RFC 2109 ‘un üçüncü taraf tanımlama bilgileri hakkındaki önerinin ardından Netscape ve Internet Explorer gelmedi. RFC 2109 yerini RFC 2965  Ekim 2000 edildi .

RFC 2965 Set-Cookie2 , “Netscape tarzı tanımlama bilgileri” olarak adlandırılan orijinal başlığın aksine , gayri resmi olarak ” RFC 2965 tarzı tanımlama bilgileri” olarak adlandırılan bir başlık ekledi Set-Cookie. Set-Cookie2 nadiren ancak kullanıldı ve içinde RFC 6265 gerçek dünyada kullanıldığı gibi çerezler için kesin bir belirtim olarak Nisan 2011’de yazılmıştır.

GÖREVLERİNE GÖRE ÇEREZLER

Çerezler, görevlerine göre;

  1. Kesinlikle gerekli çerezler
  2. Performans çerezleri
  3. İşlevsellik çerezleri
  4. Reklam/Hedefleme çerezleri
1)Kesinlikle gerekli çerezler:

Web sitesinde gezinmek ve web sitesinin özelliklerinden faydalanmak için zorunlu çerezlerdir. Bu çerezler olmadan, web sitemizden sağlanan temel hizmetlerden faydalanamazsınız. Bu tür çerezler, pazarlama faaliyetlerinde veya internette nerelerde olduğunuzun hatırlanması için bilgi toplamaz.

2)Performans çerezleri:

Kullanıcıların web sitesini ne şekilde kullandığını tespit etmek için, istatistiksel amaçlar ile anonim veriler toplar, web sitemizi ziyaretiniz esnasında kullanıcı deneyiminizi geliştirmek için kullanılır ancak kişisel verileri içermez. Bu çerezler olmadan, web sitemizi ne şekilde performans gösterdiğini öğrenemez ve size daha iyi bir kullanıcı deneyimi sunmak için gerekli düzeltmeleri gerçekleştiremeyiz.

Çerez Açıklama İlgili Gizlilik Politikası
Google Analytics Daha iyi bir kullanıcı deneyimi sunmak ve ziyaretçi sayısını tespit edebilmek ve istatistiksel anonim verileri toplamak

amacıyla kullanılmaktadır.

https://developers.google.com/…
Hotjar Daha iyi bir kullanıcı deneyimi sunmak ve istatistiksel anonim verileri toplamak amacıyla

kullanılmaktadır.

https://www.hotjar.com/privacy
3)İşlevsellik çerezleri:

Web sitesinin ihtiyaçlarınıza ve tercihlerinize uygun hale getirilmesine, yapmış olduğunuz tercihlerin hatırlanmasına izin verir. Kullanıcı bilgileri, dil ve konum tercihleri ve diğer kişisel hizmetlerin sunulmasında bu çerezler kullanılır. Bu çerezlerin topladığı bilgiler, diğer web sitelerindeki aktivitelerinizin takibini sağlamaz. Bu çerezler olmadan, web sitesi daha önce yapmış olduğunuz tercihlerinizi hatırlayamaz ve size kişiselleştirilmiş bir deneyim sunamaz.

4)Reklam/Hedefleme çerezleri:

Tarayıcı alışkanlıklarınızla ilgili bilgi toplar, bir web sitesini ziyaret ettiğinizi hatırlar ve bu bilgiyi diğer kurum ve kuruluşlar ile paylaşır. Bu şekilde, size ve ilgi alanıza giren reklamların size ulaşmasını sağlar. Her ne kadar bu çerezler sizin diğer web sitelerine yapmış olduğunuz ziyaretleri takip edebilse de, toplanan veriler ile sizin profiliniz arasında bağlantı kurulmadığından genellikle sizin gerçekte kim olduğunuzu tespit edemezler. Bu çerezler olmadan, size ve ilgi alanlarınıza giren daha az içerikle karşılaşırsınız.

Çerez Açıklama İlgili Gizlilik Politikası
Google Analytics İlgi alanıza giren reklamların size ulaşmasını sağlamak

amacıyla kullanılmaktadır.

https://developers.google.com/…
Facebook Pixel Daha iyi bir kullanıcı deneyimi sunmak ve ilgi alanınıza giren reklamların size ulaşmasını ve ölçümlenmesini sağlamak

amacıyla kullanılmaktadır.

https://developers.facebook.com…
AdForm Daha iyi bir kullanıcı deneyimi sunmak ve ilgi alanınıza giren reklamların size ulaşmasını ve ölçümlenmesini sağlamak amacıyla kullanılmaktadır. http://site.adform.com/privac…
ÇEREZ TÜRLERİ

İnternet çerezlerinin hepsi aynı işlevi görmez. Her bir çerez farklı kod yapısına sahip olabilir ve düzenlenen kod yapılarına göre de farklı görevleri yerine getiriyor olabilirler. Kimi çerezler kişisel bilgileri toplayan bir çerez iken, kimisi güvenlikle ilgili görevleri yerine getiriyor olabilir, kimi çerezler ise bilgisayarın modeli, sistem ve yapısı hakkında bilgileri toplayabilir. Toplamda 7 ayrı ana çerez türü bulunmaktadır. Bunlar :

  1. Oturum çerezleri
  2. Güvenlik çerezleri
  3. Kalıcı çerezler
  4. HTTP çerezler
  5. Üçüncü parti çerezler
  6. Süper çerezler
  7. Zombi çerezler

Sayılan tüm bu çerezlerin web tarayıcısındaki görevleri birbirinden farklıdır. Bilgisayardaki tüm çerezler kişisel verileri taramak, toplamak ve karşı taraftaki sunucuya iletmekle görevli değildir. Bazı çerezler tarayıcının güvenliğini sağlayabilir ya da ziyaret edilen web sitelerindeki fotoğrafları önbelleğe alıp sonradan web sitesi ziyaret edildiğinde sayfanın daha hızlı yüklenmesini sağlayabilir.

1)Session Cookies (oturum çerezleri):

Oturum çerezleri bir çerez türüdür. Kullanıcı; websitelerin bir sayfasından diğer sayfasına geçerken, kullanıcı bilgilerinin web server’da (database vb.) depolandığı küçük bilgilerdir. Kullanıcı siteye girdiğinde, server kullanıcıya özgü bir session ID (kimlik numarası gibi düşünebiliriz) oluşturur. Kaç kişi siteye girerse o kadar birbirinden farklı session ID oluşur. HTTP header ile veri iletimi yoktur (sadece  session ID  gönderilir). Bu session ID’ler ile kişiye özgü bilgiler server’da, genellikle veritabanına kaydedilir. Session ID’ler bilgisayardaki sitelere ait çerez dosyalarına kaydedilir. Çerezlerin depolama boyutu sınırsızdır (tarayıcı  sınırlayabilir).

Oturum çerezleri, geçici çerezlerdir ve kullanıcı tarayıcıyı kapattığında bütün bilgiler server’dan silinir. Çerezlerin son geçerlilik tarihi yoktur. Örnek olarak alışveriş sitelerindeki sepet listesini söyleyebiliriz. Sepete bir ürün ekleyip sayfalar arası geçiş (çeşitli ürünleri incelerken vb.) yaptığınızda seçtiğiniz ürünün hala sepette olduğunu görürsünüz. Çünkü server’ın sizin için oluşturmuş olduğu session ID ile seçtiğiniz ürünleri veritabanına kaydetmiştir ve bu yüzden sepet listenizdeki ürünlerinizi kaybetmezsiniz. Ta ki siz tarayıcıyı kapatana kadar.

2)Secure Cookies (Güvenli çerez):

Bir güvenli çerez sadece şifrelenmiş bir bağlantı üzerinden iletilebilecek (HTTPS). Şifrelenmemiş bağlantılar üzerinden iletilemezler (HTTP) Bu, çerezin gizli dinleme yoluyla çerez hırsızlığına maruz kalma olasılığını azaltır. Tanımlama bilgisi, tanımlama bilgisine Secure bayrak eklenerek güvenli hale getirilir .

3)Persistent Cookies (kalıcı çerez):

Kalıcı çerezler bir çerez türüdür. Kullanıcı; websitelerini gezerken, sitelerin (web server) tarayıcılar aracılığıyla hard diskinize bıraktığı küçük bilgilerdir (genellikle text dosyası halinde). Kalıcı çerezler, geçerlilik tarihi sona erene kadar veya kullanıcı çerezleri silene kadar bilgisayarda dururlar. Kalıcı çerezler en fazla 4KB boyutunda bilgi depolayabilir. Geçerlilik tarihi server tarafından belirlenir. Kalıcı çerezler ile websitelerinin, bizim, site üzerindeki hareketlerimizi takip etmesi ve bazı bilgilerimizi kaydetmesi mümkündür. Örnek olarak hepimizin bildiği kullanıcı girişi yaparken beni hatırla seçeneğini söyleyebiliriz. Giriş yaparken bu seçeneği işaretlediğimizde ve siteden çıkıp, tarayıcıyı kapatıp tekrar girdiğimizde hala giriş yapmış gözükürüz. Bunun nedeni siteye tekrar girdiğimizde kalıcı çerezlerde kayıtlı olan kullanıcı bilgilerimiz otomatik olarak bizim yerimize HTTP request ile server’a iletilmesidir.

4)HTTP Cookies (HTTP çerez):

Yalnızca http içeren bir çereze , JavaScript gibi istemci tarafı API’leri tarafından erişilemez . Bu kısıtlama,siteler arası komut dosyası (XSS) aracılığıyla tanımlama bilgisi hırsızlığı tehdidini ortadan kaldırır . Ancak tanımlama bilgisi, siteler arası izleme (XST) ve siteler arası istek sahteciliği (CSRF) saldırılarına karşı savunmasız kalır . Çereze bu özellik HttpOnly, çereze bayrak eklenerek verilir .

HttpOnly

Javascript cookieleri değiştirebilen bir betik dildir. Bu büyük bir güvenlik açığı oluşturuyor. XSS zafiyeti sayesinde cookie ler ele geçirebilir. Cookie oluştururken “HttpOnly” flag ini aktif ederseniz cookieler javascript ile erişilemez hale gelir.

Secure

Cookie lerin güvenlik ile alakalı bir diğer yer ise Secure bayrağında bulunuyor.Bu flag aktif edilirse cookie güvenliksiz http bağlantılarında gönderilmiyor, sadece ssl/tls sertifikası bulunan yani https sayfalarında gönderiliyor Buradaki açıktan faydalanan saldırgan cookie lerinizin ele geçirilmesini önlüyor.

5)Third Party Cookies (Üçüncü Parti Çerez):

Normalde, bir çerezin etki alanı özelliği, web tarayıcısının adres çubuğunda gösterilen etki alanıyla eşleşir. Buna birinci taraf tanımlama bilgisi denir . Ancak bir üçüncü taraf çerez , adres çubuğunda gösterilenden farklı bir alana aittir. Bu tür bir tanımlama bilgisi, genellikle web sayfalarında afiş reklamlar  gibi harici web sitelerinden içerik bulunduğunda görünür . Bu , kullanıcının göz atma geçmişini izleme  potansiyelini açar ve genellikle reklamcılar tarafından her kullanıcıya alakalı resimler kullanmak için kullanılır.

2014 itibariyle , bazı web siteleri 100’den fazla üçüncü taraf etki alanı için okunabilir tanımlama bilgileri ayarlıyordu.Ortalama olarak, tek bir web sitesi 10 çerez ayarlıyordu ve maksimum çerez sayısı (birinci ve üçüncü taraf) 800’ü aşıyor.

Çoğu modern web tarayıcıları ihtiva gizlilik ayarlarını yapabilirsiniz. Google Chrome, üçüncü taraf çerezlerini engellemek için yeni özellikler getirdi. Bundan böyle, Gizli modda varsayılan olarak engellenirler, ancak bir kullanıcı da onları normal tarama modunda engellemeyi seçebilir. Güncelleme ayrıca birinci taraf çerezini engelleme seçeneği de ekledi.

Bazı tarayıcılar üçüncü taraf çerezlerini engeller. Temmuz 2020 itibarıyla Apple , Safari, Firefox ve Brave , tüm üçüncü taraf çerezlerini varsayılan olarak engellemektedir. Safari, katıştırılmış sitelerin birinci taraf tanımlama bilgilerini ayarlama izni istemek için Depolama Erişimi API’sini kullanmasına izin verir. Chrome, 2022’ye kadar üçüncü taraf çerezlerini engellemeye başlamayı planlıyor.

6) Supercookies (Süper Çerez):

Süper çerez bir izleme çerezidir, ancak daha uğursuz bir kullanımı vardır. Supercookies de normal bir farklı işlevlere sahiptir.

Normal bir çerezle, sizi İnternet’te takip etmesini istemiyorsanız, tarama verilerinizi, çerezlerinizi ve daha fazlasını temizleyebilirsiniz. Çerezleri ve üçüncü taraf çerezlerini tarayıcınızdan engelleyebilir ve tarayıcı oturumunuz sona erdikten sonra çerezleri otomatik olarak silebilirsiniz. Her siteye tekrar giriş yapmanız gerekir ve alışveriş sepeti öğeleriniz depolanmaz, aynı zamanda izleme çerezlerinin artık sizi izlediği anlamına gelir.

Süper çerez farklıdır. Tarama verilerinizi temizlemek yardımcı olmaz. Bunun nedeni, bir süper çerezin aslında bir çerez olmamasıdır; tarayıcınızda saklanmıyor.

Bunun yerine, bir İSS, kullanıcının HTTP başlığına bağlantısına özgü bir parça bilgi ekler. Bilgiler, herhangi bir cihazı benzersiz bir şekilde tanımı İSS, aygıt ile bağlandığı sunucu arasına süper çerez eklediğinden, kullanıcının bu konuda yapabileceği hiçbir şey yoktur. Cihazınızda depolanmadığı için silemezsiniz. Reklam ve komut dosyası engelleme yazılımı bunu durduramaz, çünkü istek cihazdan ayrıldıktan sonra olurlar.

Süper çerezler potansiyel bir güvenlik sorunu olabilir ve bu nedenle genellikle web tarayıcıları tarafından engellenir. Tarayıcı engelini kaldırırsa, kötü amaçlı bir web sitesinin kontrolünü elinde bulunduran bir saldırgan, bir süper çerez oluşturabilir ve kötü amaçlı web sitesiyle aynı üst düzey etki alanını veya genel son eki paylaşan başka bir web sitesine meşru kullanıcı isteklerini potansiyel olarak bozabilir veya taklit edebilir.

Süper çerez, ziyaret etmeye çalıştığı web sitesi ve isteğin yapıldığı saat gibi bir kullanıcının yaptığı istek hakkında bilgi içerir. Bu, meta veri olarak bilinir (ve NSA tarafından cep telefonu kayıtlarından toplanan meta verilere çok benzer). Ancak, süper çerezler diğer veri türlerini de içerebilir.

7) Zombie cookie (Zombi Çerez)

Bir zombi çerez bir olan HTTP çerezi  silme işleminden sonra yeniden oluşturulur. Terim, 2010 yılında Süper Çerez Sınıfı Eylemleri başlatan Avukat Joseph H. Malley tarafından oluşturulmuştur. Tanımlama bilgileri, web tarayıcısının özel tanımlama bilgisi deposu dışında depolanan yedeklerden yeniden oluşturulur . Tarayıcı güvenliğini ihlal ederek çevrimiçi olarak veya doğrudan ziyaretçinin bilgisayarında saklanabilir . Bu yeniden oluşturma mekanizması, zombi çerezlerinin kaldırılmasını çok zorlaştırır. Bu çerezler, tamamen geleneksel çerezlere dayanmadıkları için çerez almamayı tercih eden bir web tarayıcısında oluşturulabilir.

Zombi çerezi başka bir tür süper çerezdir 7 Tarayıcı Hakkında Bilmeniz Gereken Tarayıcı Çerezleri Türleri, çevrimiçi gizliliğinizi azaltmak için tasarlanmamıştır. Adından da anlaşılacağı gibi, zombi çerezini öldüremezsiniz. Ve onu öldürdüğünü düşündüğün zaman, zombi çerezi tekrar hayata dönebilir.

Bir zombi çerezi, tarayıcınızın normal çerez deposunun dışında saklandığından bozulmadan kalır. Zombi çerezleri yerel depolamayı, HTML5 depolamasını, RGB renk kodu değerlerini, Silverlight depolamasını ve daha fazlasını hedefler. Bu yüzden zombi çerezleri olarak biliniyorlar. Bir reklam veren, geri kalanları diriltmek için bu yerlerden birinde yalnızca mevcut bir çerez bulmalıdır. Bir kullanıcı depolama konumlarından herhangi birinden tek bir zombi çerezini silemezse, kareye geri döner.

ÇEREZLERİN KULLANIM AMAÇLARI
1)Oturum Yönetimi:

Girişler, alışveriş sepetleri, oyun puanları veya sunucunun hatırlaması gereken diğer şeyler…

Çerezler, başlangıçta kullanıcılara, bir web sitesinde gezinirken satın almak istedikleri ürünleri kaydetmeleri için bir yol sağlamak için tanıtıldı (sanal bir “alışveriş sepeti” veya “alışveriş sepeti”).Ancak günümüzde, bir kullanıcının alışveriş sepetinin içeriği genellikle istemcideki bir çerezden ziyade sunucudaki bir veritabanında saklanmaktadır. Hangi kullanıcının hangi alışveriş sepetine atandığını takip etmek için sunucu, istemciye benzersiz bir oturum tanımlayıcısı  içeren bir çerez gönderir(tipik olarak uzun bir rastgele harf ve sayı dizisi). Çerezler, istemcinin yaptığı her istekte sunucuya gönderildiği için, bu oturum tanımlayıcı, kullanıcı web sitesinde her yeni sayfayı ziyaret ettiğinde sunucuya geri gönderilir ve bu da sunucunun kullanıcıya hangi alışveriş sepetini göstereceğini bilmesini sağlar.

Çerezlerin bir başka popüler kullanımı, web sitelerinde oturum açmak içindir. Kullanıcı bir web sitesinin oturum açma sayfasını ziyaret ettiğinde, web sunucusu genellikle istemciye benzersiz bir oturum tanımlayıcısı içeren bir tanımlama bilgisi gönderir. Kullanıcı başarıyla oturum açtığında, sunucu söz konusu oturum tanımlayıcısının kimliğinin doğrulandığını hatırlar ve kullanıcının hizmetlerine erişmesine izin verir.

Oturum çerezleri yalnızca benzersiz bir oturum tanımlayıcı içerdiğinden, bu, bir web sitesinin her kullanıcı hakkında kaydedebileceği kişisel bilgi miktarını neredeyse sınırsız hale getirir – web sitesi, bir çerezin ne kadar büyük olabileceğiyle ilgili kısıtlamalarla sınırlı değildir. Oturum tanımlama bilgileri, bir oturum tanımlama bilgisindeki bilgi miktarı küçük olduğundan ve çok az bant genişliği gerektirdiğinden, sayfa yükleme sürelerinin iyileştirilmesine de yardımcı olur.

2)Kişiselleştirme:

Kullanıcı tercihleri, temalar ve diğer ayarlar…

Çerezler, zamanla ilgili içeriği o kullanıcıya göstermek için kullanıcı hakkındaki bilgileri hatırlamak için kullanılabilir. Örneğin, bir web sunucusu, bir web sitesinde oturum açmak için en son kullanılan kullanıcı adını içeren bir tanımlama bilgisi gönderebilir, böylece kullanıcının bir sonraki oturum açışında otomatik olarak doldurulabilir.

Birçok web sitesi, kullanıcının tercihlerine göre kişiselleştirme için çerezler kullanır. Kullanıcılar tercihlerini bir web formuna girerek ve formu sunucuya göndererek seçerler. Sunucu, tercihleri ​​bir çerezde kodlar ve çerezi tarayıcıya geri gönderir. Bu şekilde, kullanıcı web sitesindeki bir sayfaya her eriştiğinde, sunucu sayfayı kullanıcının tercihlerine göre kişiselleştirebilir. Örneğin, Google arama motoru bir zamanlar, kullanıcıların (kayıtlı olmayanlar bile) her sayfa için kaç arama sonucu görmek istediklerine karar vermelerine izin vermek için çerezler kullandı. Ayrıca DuckDuckGo , kullanıcıların web sayfasının renkleri gibi görüntüleme tercihlerini ayarlamalarına izin vermek için tanımlama bilgileri kullanır.

3)Takip:

Kullanıcı davranışını kaydetme ve analiz etme.

İzleme çerezleri, kullanıcıların web’de gezinme alışkanlıklarını izlemek için kullanılır. Bu , sayfayı isteyen bilgisayarın IP adresi  veya HTTP istek başlığının yönlendiren  alanı kullanılarak bir dereceye kadar yapılabilir , ancak tanımlama bilgileri daha fazla hassasiyet sağlar. Bu şu şekilde gösterilebilir;

  1. Kullanıcı sitenin bir sayfasını talep ederse, ancak talep çerez içermiyorsa, sunucu bunun kullanıcı tarafından ziyaret edilen ilk sayfa olduğunu varsayar. Böylece sunucu, benzersiz bir tanımlayıcı (genellikle rastgele bir harf ve sayı dizisi) oluşturur ve bunu istenen sayfayla birlikte tarayıcıya bir çerez olarak geri gönderir.
  2. Bu noktadan itibaren, çerez, siteden her yeni sayfa talep edildiğinde tarayıcı tarafından sunucuya otomatik olarak gönderilecektir. Sunucu sadece sayfayı her zamanki gibi göndermekle kalmaz, aynı zamanda istenen sayfanın URL’sini, talebin tarihini / saatini ve çerezi bir günlük dosyasında saklar.

Bu günlük dosyasını analiz ederek, kullanıcının hangi sayfaları hangi sırayla ve ne kadar süreyle ziyaret ettiğini bulmak mümkündür.

Şirketler, satın alma alışkanlıkları hakkında bilgi toplamak için çerezleri izleyerek kullanıcıların web alışkanlıklarından yararlanır.Veriler daha sonra toplanabilir ve teklif veren şirketlere satılabilir.

ÇEREZ ÖZELLİKLERİ VE UYGULAMASI

Çerezler, sunucu tarafı bağlantılarının (CGI betikleri gibi) bağlantının istemci tarafında hem bilgi depolamak hem de almak için kullanabileceği genel bir mekanizmadır. Basit, kalıcı, istemci tarafı durumunun eklenmesi, Web tabanlı istemci / sunucu uygulamalarının yeteneklerini önemli ölçüde artırır.

Bir sunucu, bir istemciye bir HTTP nesnesi döndürürken, istemcinin saklayacağı bir durum bilgisi parçası da gönderebilir. Bu durum nesnesine, o durumun geçerli olduğu URL aralığının bir açıklaması dahildir. İstemci tarafından bu aralığa giren gelecekteki tüm HTTP istekleri, durum nesnesinin geçerli değerinin istemciden sunucuya geri iletimini içerecektir. Durum nesnesi, zorlayıcı bir neden olmaksızın çerez olarak adlandırılır .Bu basit mekanizma, web tabanlı ortamlar için bir dizi yeni uygulama türünün yazılmasını sağlayan güçlü ve yeni bir araç sağlar. Alışveriş uygulamaları artık seçili öğeler hakkında bilgi depolayabilir, ücret karşılığında servisler kayıt bilgilerini geri gönderebilir ve müşteriyi bir sonraki bağlantıda bir kullanıcı kimliğini yeniden yazmaktan kurtarabilir, siteler kullanıcı başına tercihleri ​​istemcide saklayabilir ve müşteriyi tedarik edebilir o siteye her bağlandığında bu tercihler bir HTTP yanıtının parçası olarak bir Set-Cookie başlığı eklenerek istemciye bir tanımlama bilgisi tanıtılır , bu genellikle bir CGI betiği tarafından oluşturulur.

Çerezleri desteklemek için tarayıcıların aşağıdaki gereksinimleri karşılamasını gerektirir;

  1. 4.096 byte kadar büyük çerezleri destekleyebilir .
  2. Etki alanı başına (yani web sitesi başına) en az 50 çerezi destekleyebilir .
  3. Toplamda en az 3.000 çerezi destekleyebilir.

Diğer özellikler;

  1. Birden çok Set-Cookie başlığı tek bir sunucu yanıtında verilebilir.
  2. Aynı yol ve adın örnekleri, en son örnek öncelikli olacak şekilde birbirlerinin üzerine yazılır. Aynı yolun örnekleri ancak farklı adlar ek eşlemeler ekleyecektir.
  3. Yolun daha yüksek seviyeli bir değere ayarlanması, diğer daha spesifik yol eşleştirmelerini geçersiz kılmaz. Belirli bir çerez adı için birden fazla eşleşme varsa, ancak farklı yollara sahipse, eşleşen tüm çerezler gönderilecektir.
  4. Sona erme başlığı, istemcinin eşlemeyi temizlemenin ne zaman güvenli olduğunu bilmesini sağlar, ancak istemcinin bunu yapması gerekmez. Bir müşteri, çerez sayısı dahili limitlerini aşarsa, son kullanma tarihi gelmeden önce bir çerezi silebilir.
  5. Bir sunucuya tanımlama bilgileri gönderirken, daha belirli bir yol eşlemesine sahip tüm tanımlama bilgileri, daha az belirli yol eşlemelerine sahip tanımlama bilgilerinden önce gönderilmelidir. Örneğin, “/” yol eşlemesine sahip bir “ad1 = foo” çerezi, her ikisi de gönderilecekse “/ bar” yol eşlemesine sahip “ad1 = foo2” çerezinden sonra gönderilmelidir.
  6. Bir CGI betiği bir çerezi silmek isterse, bunu aynı ada sahip bir çerez döndürerek yapabilir ve geçmişte olan bir zaman aşımına uğrar. Geçerliliğini yitiren tanımlama bilgisinin geçerli tanımlama bilgisini değiştirmesi için yol ve ad tam olarak eşleşmelidir. Bu gereksinim, bir çerezin yaratıcısı dışında herhangi birinin bir çerezi silmesini zorlaştırır.
  7. HTTP’yi önbelleğe alırken, bir proxy sunucusunun yapabileceği gibi, Set-cookie yanıt başlığı hiçbir zaman önbelleğe alınmamalıdır.
  8. Bir proxy sunucusu Set-cookie başlığı içeren bir yanıt alırsa , cevabın 304 (Değiştirilmedi) veya 200 (OK) olmasına bakılmaksızın Set-cookie başlığını istemciye yaymalıdır. Benzer şekilde, bir müşteri talebi bir Cookie: başlığı içeriyorsa, koşullu If-modifiye-since isteği yapılsa bile, bir proxy aracılığıyla iletilmelidir.

SET-Cookie: Cookie_Name = Cookie_Value; expire = Tarih; etki alanı = EtkiAlanı_Adı; yol = Yol; Secure_Flag = boole; Bayrak = boole

Cookie_Name ve Cookie_Value, tanımlama bilgisinde saklamak istediğimiz gerçek bilgilere sahiptir. Tarayıcıda bir olarak görünen bir çerezde birden fazla Çerez_Adı ve Çerez_Değeri çiftine sahip olabiliriz.

Tarih, çerezin geçerli yaşam süresidir. Varsayılan olarak çerez, tarayıcı kapatıldığında süresi dolacak şekilde ayarlanmıştır. Son kullanma tarihi ayarlanmışsa, çerez, son kullanma tarihine ulaşıldığında artık saklanmayacaktır.

EtkiAlanı_Adı, tanımlama bilgisinin geçerli olduğu bir ana bilgisayar veya etki alanı adıdır. Bir sunucu belirli bir Web sitesi için tanımlama bilgilerini ararken, EtkiAlanı_Adı ile ana bilgisayarın gerçek İnternet etki alanı adının bir karşılaştırması yapılır. Örneğin, bu alanın alan adı olarak domain = acme.com olabilir.

Bayrak, belirli bir etki alanındaki tüm makinelerin çerezdeki değişkene erişip erişemeyeceğini belirtir. Doğruysa, belirtilen EtkiAlanı_Adı’ndaki tüm sunucular tanımlama bilgisini kullanabilir (ve tarayıcı tanımlama bilgisini o etki alanındaki tüm sunuculara sağlar). Yanlış Domain.Name, tarayıcının bu çerezi vereceği tek ana bilgisayar olan bir ana bilgisayar adı olarak yorumlanırsa.

Yol, çerez için etki alanındaki geçerli yolu belirler. En genel yol “/” dir. Örneğin, “/ foo” yolu “/ foodoc” ve “/foo/index.html” ile eşleşir.

Bir tanımlama bilgisi “güvenli” olarak belirtilirse, tanımlama bilgisi yalnızca SSL bağlantısı gibi güvenli iletişim kanalları üzerinden iletilecektir.

Cookie_Name ve Cookie_Value dışında yukarıdaki alanların tümü isteğe bağlıdır. Bazı tanımlama bilgilerine sahip bir tarayıcı, bir Web sunucusuna bir URL için bir HTTP isteği gönderdiğinde, istek aşağıdaki biçimde bir satır içerir.

Çerez: Cookie_Name1 = Cookie_Value1; Cookie_Name2 = Cookie_Value2; . . .

Yalnızca o sunucuyla ilgili olan çerezler (Etki_Alanı_Adı ve Bayrak alanları sayesinde) tarayıcı tarafından gönderilecektir.

Secure ve HttpOnly,nitelikleri ilişkili değerleri yoktur. Aksine, sadece öznitelik adlarının varlığı, davranışlarının etkinleştirilmesi gerektiğini gösterir.

Secure nitelikli tarayıcılar aracılığıyla yalnızca çerezleri kullanmayı yönlendiren, şifrelenmiş iletim sınırlı çerez iletişimi sağlamak için tasarlanan güvenli/şifreli  bağlantıları. Bununla birlikte, bir web sunucusu güvenli olmayan bir bağlantıdan güvenli bir özniteliğe sahip bir tanımlama bilgisi ayarlarsa, tanımlama bilgisi, ortadaki adam saldırıları  tarafından kullanıcıya gönderildiğinde yine de durdurulabilir . Bu nedenle, maksimum güvenlik için, Secure özniteliğine sahip tanımlama bilgileri yalnızca güvenli bir bağlantı üzerinden ayarlanmalıdır.

HttpOnly özellik, tarayıcıları tanımlama bilgilerini HTTP (ve HTTPS) istekleri dışındaki kanallar üzerinden göstermemeye yönlendirir. Bu, çereze istemci tarafı kodlama dilleri (özellikle Javascript) aracılığıyla erişilemeyeceği ve bu nedenle siteler arası komut dosyası oluşturma  (yaygın bir saldırı tekniği) yoluyla kolayca çalınamayacağı anlamına gelir.

SameSite çerezleri, sunucuların siteler arası yapılan isteklerde (buradaki Site  tescilli etki alanı tarafından tanımlıdır) çerez gönderimini engellemesini sağlar, bu da siteler arası sahtecilik saldırılarına (CSRF) karşı bir miktar koruma sağlar.SameSite çerezleri nispeten yenidir ve tüm büyük tarayıcılar tarafından desteklenir.

Sunucu, sunucu için geçerli olan herhangi bir çerez bulursa, bu çerezler tarayıcı ile sunucu arasındaki bu iletişim sırasında kullanılır. Bununla birlikte, sunucu kendisi için belirlenmiş herhangi bir tanımlama bilgisi bulamazsa, ya bu sunucu iletişimde tanımlama bilgilerini kullanmaz ya da sunucu, tarayıcı ile sunucu arasında sonraki iletişim için yeni tanımlama bilgileri oluşturur. Ayrıca, sunucular herhangi bir özel durum için tanımlama bilgilerinin içeriğini güncelleyebilir. Çerezlerin yayınlayıcısı, çerezlerin doğrulanması için önemli değildir. Başka bir deyişle, bir sunucu, etki alanındaki diğer sunucular için tanımlama bilgileri oluşturabilir.

Not: Set-Cookie başlığı çeşitli sunucu tarafı uygulamalarda şöyle kullanılır;

ÇEREZLER NASIL ÇALIŞIR

Çerezler, HTTP header (HTTP üst bilgi) alanları ile gönderilir ve alınır. HTTP header; HTTP request (HTTP istek) ve HTTP response (HTTP yanıt) mesajlarından oluşur.

Çalışma mantığını kısaca anlatmak gerekirse; bir siteye girildiğinde, kullanıcı, server’dan siteyi kendisine getirmesi için istek mesajı göndermiş olur, buna HTTP request denir. Server’da buna karşılık olarak yanıt verir ve siteyi kullanıcıya gönderir, buna da HTTP response denir. Çerezler, HTTP request’in Cookie alanı ve HTTP response’un Set-Cookie alanı ile tanımlanır ve böylece client-server ilişkisi kurulmuş olur.

https://hakantasan.com/assets/images/makale_resim/m23r2.png

WEB DEPOLAMA (WEB STORAGE) KAVRAMLARI

Henüz HTML5 geliştirilmemişken veri depolamak için çerezler (kalıcı çerezler, oturum çerezleri vb.) kullanılıyordu. HTML5’in geliştirilmesiyle birlikte veri depolamaya yarayan yeni alternatifler geldi: Web Storage (Web Depolama). HTML5 web depolama için bize 2 seçenek sunmakta. Bunlar Local Storage (Yerel Depolama) ve Session Storage (Geçici Depolama). Mantığını çerezler gibi düşünürsek; local storage ile kalıcı çerezler ve session storage ile geçici çerezler ilişkilendirilebilir. Ancak çerezlerden en önemli farklarından biri; local storage ve session storage verileri kullanıcı bilgisayarında (tarayıcıya göre konum değişebilir) depolanır ve gerektiğinde buradan çağrılır. Bu veriler çerezlerde olduğu gibi key-value tanımlamasıyla saklanır.

Web Storage özelliği Javascript ile kullanılır. Depolama işlemleri yapılırken HTML5 ile birlikte hazır olarak gelen localStorage ve sessionStorage nesnelerinden yararlanılır. Web depolamayı tarayıcıların çok eski sürümleri hariç bütün popüler tarayıcılar destekler.

https://hakantasan.com/assets/images/makale_resim/m27r1.png

Çerezlerin sahip olduığu bütün avantajlar web storage’da da vardır. Ancak web storage çerezlerin bazı eksik noktalarını tamamlamıştır. Bunlar;

  1. Kalıcı çerezlerde maksimum veri depolama boyutu 4KB’dir. Ancak Web Storage ile büyük miktarlardaki veriler depolanabilir.
  2. Veriler server tarafında değil client tarafında tutulur. Bu sayede websitelerine erişimde hız ve performans bakımından artış sağlanır. Çünkü normalde kalıcı çerezler HTTP request mesajı ile server’a iletilir ama Web Storage’da veriler kullanıcı bilgisayarında saklandığı için ve gerektiğinde kullanıcı bilgisayarından çağrıldığı için buna gerek yoktur. Dolayısıyla çerezler server’ı meşgul etmeyecektir.
ÇEREZLER VERİ TOPLAMA VE YÖNTEMLERİ

Günümüzde hemen hemen herkesin bir Facebook, Gmail, Twitter ya da Instagram adresi bulunmaktadır. Dolayısıyla bu platformlarda milyarlarca insan birikmiş ve bu büyük topluluklar şirketler, hükümetler ve sivil toplum kuruluşları için gittikçe önem kazanmıştır. Tüm bu insanların bir araya gelerek oluşturduğu büyük buluta big data denmektedir. Big data verilerin bir araya gelmesini sağladığı gibi aynı zamanda veri toplama yöntemlerini de gittikçe kolaylaştırmıştır. Bireyler Facebook, Google, Instagram ve Twitter gibi sosyal medya platformlarına üye olarak burada paylaşım yapmakta, diğer kişilerin paylaşımlarını beğenmekte ve aynı zamanda kendi hobileri olan sayfalara üye olmaktadırlar. Bu sayfalar siyasi, spor, ünlüler, hobiler vs daha birçok şeyle alakalı olabilmektedir. Ancak kişilerin bıraktığı bu veriler büyük veri için tek başına yeterli değildir. İşte bu noktada çerez kavramı devreye girmektedir.

Big Data:

Sosyal medya ,arama motorları , bilgi belge arşivleri, log dosyaları,makine dataları gibi farklı kaynakların oluşturduğu bilgi yığınlarını işleyerek anlamlı verilere dönüştürmek için ar-ge faaliyetleri yapan yazılım şirketleri tarafından ortaya atılmış bir olgudur.

Çalışma tablolarından veri tabanlarına, sunuculardan bulut servislere kadar her türlü veriyi kapsayan Big Data (Büyük Veri) günümüzde veri tabanı uzmanlarının ilişkisel veri tabanlarında yapısal biçimde sınıflandırmaya başladığı ve işletmelerin kullanabileceği ve şirket yöneticilerinin raporlama sistemleri üzerinden karar almasını destekleyen sistemlere evrilmiş durumdadır.

ÇEREZLERİN KULLANILDIĞI YERLER

Semantik web teknolojisinin gelişmesiyle kullanıcıların bir siteyi sadece ziyaret etmeleri değil aynı zamanda o web sitesinde ne yaptıkları ne kadar vakit geçirdikleri, hangi ürünleri inceledikleri ve hatta hangi kredi kartlarını kullandıkları da önem kazanmıştır. İnsanların günümüzde her yerden ve istedikleri mağazadan tek bir ekrandan alışveriş yapabilmesini sağlayan e-ticaret siteleri için de çerezler vazgeçilemez bir unsur haline gelmiştir. Vazgeçilemez olmasının sebebi ise burada hiç şüphesiz, ticaret dünyasındaki hırsın ve rekabetin artmasıdır. Firmalar kendi müşterileri haricinde potansiyel müşterilerin de internette nelerle vakit geçirdiğini ve interneti nasıl kullandıklarını bilmek istemektedirler. Çerezler de bu web sitelerine; ne, nasıl, ne zaman, nerede, neden ve kim sorularının yanıtını verebilmek için en başta Facebook, Twitter, Instagram ve Google gibi sosyal medya platformlarında kullanılmaktadır. Bu platformlarda kullanılması kişisel girdilerin daha iyi kontrol edilebilir olması ve doğrudan kişinin ruh halinin izlenebildiği platformlar olmalarıdır. Bu web sitelerine üye olan insanlar bu web sitelerinde hiç paylaşım yapmasalar ve sadece girip çıksalar dahi kendileri hakkında değerli verilerin toplanabileceği mekanlardır. Bu platformlarda insanlar hiçbir paylaşımda bulunmasalar bile beğendikleri, takip ettikleri ve baktıkları fotoğraflar, videolar ile aslında kendi kişisel alanlarından bir kesiti dijital ortamdaki çerezlere veri olarak göndermektedir.

Çerezlerin kullanıldığı dijital mecralardan birisi de reklamlardır. Sosyal medya platformları günümüzde aynı zamanda birer medya alanı satıcısıdır. Dolayısıyla bahsi geçen e-ticaret sitelerinin, işletmesinin reklamını yapmak ve insanlara tanıtmak isteyen kişilerin de sıklıkla kullandığı bir yerdir. Çerezler, internet kullanıcılarından elde ettikleri verilerle çok sistemli bir kategorize etme görevini de üstlenirler. Kullanıcılardan elde edilen yaş, yer, meslek, gelir durumu, ilgi alanları, aile ve diğer birçok kritere göre büyük kitleler kategorilere ayrılır. Çerezlerin kategorilere ayırdığı kişiler, firmaların ve medya satın alma ajanslarının da ulaşmak istedikleri bir hedef haline gelir. Geçmişte medya satın alma konusunda kesin sonuçlar verilemeyecek iken günümüzde çerezlerin sunduğu kişiselleştirilmiş veriler sayesinde firmalar daha net sonuçlara ulaşabilmektedir. Örneğin geleneksel medya satın alma metotlarında reklamın kimlere ulaştığı ve ne kadar verimli olduğu gibi sonuçlar ancak reklamın süresi bittiğinde o zamana kadar yapılan satışların verisi, reklama harcanan maddi tutar, hedeflenen ABC grupları vs gibi birçok değişkene göre hesaplanıyor ve doğruya yakın bir değer elde ediliyordu. Günümüzün çevrimiçi reklamlarında doğrudan hedef kitle belirlenebildiği gibi ne kadar satış yapıldığı, kimlerin reklamı satın aldığı ve ne kadar süre gösterildiği gibi veriler en ince ayrıntısına kadar görülebilmektedir. Sosyal medyadaki bu potansiyelin farkında olan büyük reklam verenler, küresel şirketler ve işletmelerin de kişiselleştirilmiş verilere olan ihtiyacı her geçen gün artmaktadır. Çerezler de hem bulundukları yerleri hem de kendi yapılarını bu ihtiyaca göre geliştirmektedir. Ancak bu gelişimin kişisel verilerin güvenliğini ya da kişisel mahremiyeti tehdit eden bazı boyutları bulunmaktadır.

ÇEREZLER NASIL YÖNETİLİR

Genellikle internet tarayıcıları, çerezlerin kullanımına otomatik olarak izin verilmiş şekilde ayarlanmıştır. İnternet tarayıcınızın ayarları üzerinden çerezleri sınırlayabilir, engelleyebilir, silebilir veya cihazınıza çerez gönderildiğinden uyarı alacak şekilde ayarlayabilirsiniz. Farklı internet tarayıcıları için, farklı yöntemler kullanılması gerekebilir, bu konuda detaylı bilgiyi internet tarayıcınızın “Yardım” bölümünden öğrenebilirsiniz.

Bir veya daha fazla çerez kategorisi engellemeniz halinde, mevcut çerezler ile bilgi toplamaya devam edebilir, ancak engellenen çerezlerin kullanımına derhal son verilecektir.

Her halükarda ilerleyen zamanlarda kullanıcı, bilgisayarlarında depolanan ve iznini gerektiren

çerezleri kaldırmak istemesi halinde, web tarayıcısı tarafından bu amaçla sağlanan araçları kullanarak bu işlemini gerçekleştirebilir. Bu bağlamda, ihtiyaç duyabileceği ilave bilgilere aşağıda yer alan linklerden ulaşılabilir;

ÇEREZLER NASIL SİLİNİR
1)Microsoft Internet Explorer:
  • Internet Explorer’ı açın.
  • Sağ köşede yer alan dişli simgesine tıklayın.
  • Güvenlik sekmesine gelin ve Görüntüleme Geçmişinizi Temizleme seçeneğine giriş yapın.
  • Burada çerezlerin işaretli olduğundan emin olduktan sonra silme işlemini uygulayın.
2)Google Chrome:
  • Google Chrome’u açın.
  • Sağ kısımda yer alan Seçenekler menüsüne tıklayın.
  • Açılan menüden Ayarlar’a giriş yapın.
  • Ayarlarda arama çubuğuna “Çerez” yazın ve karşınıza gelen sonuçlardan Tarama verilerini temizle seçeneğine tıklayın.
  • Silmek istediğiniz süreci seçtikten sonra işaretli seçenekler menüsünden çerezlerin işaretli olduğundan emin olun.
  • Son olarak Tarama Verilerini Temizle’ye tıklayın.
3) Mozilla Firefox:
  • Mozilla Firefox’u açın.
  • Sağ köşeden seçenekler menüsüne dokunun ve Ayarlar’a tıklayın.
  • Gizlilik sekmesine geçiş yapın.
  • Geçmiş seçeneğinin altından çerezleri işaretleyin ve temizleme işlemini uygulayın.
4) Safari:
  • Safari’yi açın.
  • Sağ köşeden dişli simgesine tıklayın.
  • Açılan pencere içerisinden Seçenekler (Tercihler)’e tıklayın.
  • Gizlilik sekmesinden altından çerezleri seçin ve silme işlemini uygulayın.
5) Opera:
  • Opera’yı açın.
  • Sağ kısımdaki menüden Ayarlar’a giriş yapın.
  • Sol kısımdan Gizlilik ve güvenlik sekmesini açın.
  • Çerezler sekmesi altından “Tüm çerezler ve site verileri” butonuna tıklayın.
  • Açılan pencereden tüm çerezleri veya istediğiniz çerezleri silin.
ÇEREZLERDEKİ GÜVENLİK KAYGILARI

Çerezler genellikle Web sunucuları tarafından ziyaretçileri etiketlemek, kim olduklarını ve ne yaptıklarını belirlemek için kullanılır. Örneğin, bir tüccar Web sitesinde, müşterilerin isimleri, adresleri, ödeme geçmişleri, ticaret geçmişleri ve kredi kartı numaraları gibi bilgilerini içeren bir müşteri veritabanı varsa, Web sitesi, içindeki bireysel müşteri kayıtlarına işaretçiler depolamak için tanımlama bilgileri oluşturur ve kullanır. Müşterinin tüm bilgilerini çerezde saklamak yerine, bir müşterinin basit bir kimlik numarasını bir çerezde saklamak etkilidir. Ayrıca bu kimlik numarası, gerçek müşteri verilerini ifşa etmeden bir çerezde gösterilebilir.

Çerezler, tarayıcı tarafında saklanan Web sunucuları için elektronik notlardır. Bazı kişiler, rastgele herhangi bir sitenin bir kullanıcının sabit diskindeki çerezleri okuyabileceğinden veya çerezlerin bir kullanıcının sabit diskinden bilgi çalmak için kullanılabileceğinden endişe duyabilir. Neyse ki, bir tanımlama bilgisinin kullanıcının sabit diskinin içeriğini inceleyebileceği gibi, kullanıcının özel verilerini Web’de yayınlayamaz. Bu nedenle, çerezler kullanıcı hakkında herhangi bir hassas bilgi taşımazsa veya hassas bilgiler düz metin halinde değilse (örneğin, çerezler, hassas bilgilerin şifrelenmiş metinlerini taşıyorsa), çerezlerde iletilen verilerin gizliliğini sağlayabiliriz.

ÇEREZLERDEKİ GÜVENLİK

Ancak kötü niyetli bir kullanıcı çerezlerin içeriğini değiştirirse ne olur? Ya kötü niyetli bir kullanıcı, muhtemelen bilgisayarlarından çalınan başkalarının çerezlerini kullanırsa? Kötü niyetli bir kullanıcı diğer kişilerden çerez toplarsa ve kredi kartı numaraları veya şifreler gibi bazı hassas bilgileri çıkarırsa ne olur? Aslında, çerezler kullanıcının sabit disklerinde bir yerde düz metin olarak saklandığından, bu saldırıların gerçekleştirilmesi kolaydır.  Bu nedenle çerezler, şifreler, kredi kartı numaraları, satın alma yetkilendirme numaraları vb. gibi hassas bilgileri depolamak için doğru bir yer değildir.

Çerezlere yönelik üç tür tehdidi ayırt ediyoruz: ağ güvenliği tehditleri, son sistem tehditleri ve çerez toplama tehditleri.

1)Ağ Güvenliği Tehditleri:

Ağ üzerinde açık metin olarak iletilen çerezler, gözetlemeye (daha sonra tekrar oynatmak için) ve ağ tehditleri tarafından değiştirilmeye açıktır. Ağ tehditleri, sunucularda ve tarayıcılarda yaygın olarak kullanılan Güvenli Yuva Katmanı (SSL) protokolü kullanılarak engellenebilir. Ancak SSL, çerezleri yalnızca ağ üzerindeyken güvence altına alabilir.

2)Son Sistem Tehditleri:

Tanımlama bilgisi tarayıcının son sisteminde olduğunda, sabit diskte veya bellekte açık metin olarak bulunur. Bu tür çerezler, kullanıcılar tarafından önemsiz bir şekilde değiştirilebilir ve bir bilgisayardan diğerine, çerezin orijinal olarak depolandığı kullanıcının bilgisi dahilinde olsun veya olmasın kolaylıkla kopyalanabilir. Biz buna son sistem tehdidi diyoruz.

3)Çerez Toplama Tehditleri:

Çerezleri değiştirme yeteneği, kullanıcıların çerezlerdeki yetkilendirme bilgilerini taklit etmelerine ve diğer kullanıcıları taklit etmelerine olanak tanır. Çerezleri kopyalama yeteneği, bu tür sahteciliği ve kimliğe bürünmeyi daha da kolaylaştırır. Ayrıca, bir saldırgan, kullanıcıların çerezlerini kabul eden bir siteyi taklit ederek çerezleri toplayabilirse, daha sonra bu çerezleri kabul eden tüm diğer siteler için toplanan çerezleri kullanabilir. Buna çerez toplama tehdidi diyoruz.

SSL

Secure Socket Layer (Güvenli Giriş Katmanı)dır. SSL kişisel gizlilik ve güvenilirlik sağlayan, network üzerindeki bilgi transferi sırasında bilginin bütünlüğü ve gizliliği (data protection) için sunucu ile istemci arasındaki iletişimin şifrelenmiş şekilde yapılabilmesine imkan veren bu sayede gizliliğinin ve bütünlüğün korunmasını sağlayan Netscape tarafından geliştirilmiş bir güvenlik protokolüdür.

Web üzerinde güvenli iletişim için, sunucu ile İnternet üzerindeki kullanıcının makinesi arasında güvenli bir kanalı destekleyen SSL gibi diğer mevcut teknolojileri kullanmayı düşünebiliriz. Ancak SSL, durum bilgisi olmayan HTTP sorununu çözemez. Ayrıca, bir kullanıcı, güvenli bir SSL korumalı kanal üzerinden sunucudan çerezler alabilse bile, bu kullanıcıya güvenebileceğimiz anlamına gelmez.

ÇEREZLERDEKİ GÜVENLİK ZAFİYETLERİ VE SALDIRILAR
Çerezlere yapılan saldırılar:
1)Oturum Saldırısı / Çerez Kaçırılması (Session Hijacking / Cookies Hijacking):

Bu tür MITM saldırısında, saldırgan, güvenilen bir istemci ile ağ sunucusu arasındaki bir oturumu ele geçirir. Kurban makinede kimlik doğrulama işlemi sırasında oluşan bilgilerin saldırgan tarafından çalınmasıdır. Böylece kurbana ait oturumun kontrolü saldırganın eline geçer. Parolaya sahip olmaya gerek kalmadan, kurban gibi erişim sağlanabilir. Kimlik doğrulaması sırasında kullanılan parola bilgisi kullanımında hesap kilitlenebiliyorken, geçersiz olan oturum ID değeri için hesap kilitlenmediği için Oturum Çalma saldırıları önemli bir saldırı yöntemi olarak görülür.

Olay sırası;

  • Bir istemci bir sunucuya bağlanır.
  • Saldırganın bilgisayarı istemcinin kontrolünü kazanır.
  • Saldırganın bilgisayarı istemciyi sunucudan ayırır.
  • Saldırganın bilgisayarı, istemci IP adresini kendi IP adresiyle değiştirir ve istemcinin sıra numaralarını taklit eder.
  • Saldırganın bilgisayarı, sunucuyla iletişim kurmaya devam eder ve sunucu, istemciyle iletişim kurmaya devam ettiğine inanır.
Oturum Çalma Yöntemleri

Yöntemine göre Aktif veya Pasif olarak oturum çalma saldırısı gerçekleştirilebilir.

  • Aktif oturum çalma yönteminde saldırgan aktif oturumu kendi üzerine alır ve devam ettirir.
  • Pasif oturum çalma yönteminde ise kurban ve sunucu arasındaki trafik dinlenir, kaydedilir.

OSI modeline göre Ağ seviyesinde ve Uygulama seviyesinde oturum çalma saldırısı gerçekleştirilebilir.

  • Ağ seviyesinde oturum çalma yönteminde kurban ve sunucu arasındaki TCP veya UDP oturumu arasına girilerek paketler ele geçirilebilir.
  • Uygulama seviyesinde oturum çalma yönteminde oturum ID değeri elde edilerek kullanıcı oturumu ele geçirilir.
Uygulama Seviyesinde Oturum Çalma Yöntemleri:
  • Session Sniffing: Ağ dinlenebilir.
  • Token/Session ID Tahmin Etme: Zayıf algoritmalar ile yeterince rastgele olmayan oturum ID değeri üretilirse, bu anahtarlar bir süre toplanır, paterni analiz edilerek tahmin edilebilir. Oturum anahtarında tarih kullanımı, kullanıcı adının kodlanmış halinin kullanımı, vb. yöntemler zayıf yöntemler olarak kabul edilmektedir.
  • Man in the Middle (MITM): İstemci ve sunucu arasındaki TCP oturumunda araya girilebilir.
  • Man in the Browser (MITB): Kurbana ait web tarayıcısı ile web uygulaması arasına girilebilir. Trojan yazılımına ait zararlı kod (web tarayıcısı uzantısı da olabilir) kurbanın ziyaret ettiği sayfaları kontrol ederek beklediği sitelere (bankacılık, devlet, mailleşme siteleri olabilir) erişilip erişilmediğini kontrol eder. Kurban, hedef siteye eriştiğinde kurbana ait bilgiler saldırgana iletilebilir. Bu zararlı yazılımlar, web tarayıcısı ayarlarını değiştirerek SSL’de araya girebilir. Böylece, SSL ile gerçekleşen trafik sonucu bile elde edilebilir.
  • İstemci Taraflı Saldırılar: Doğrudan istemciye (kurbana) saldırılabilir. XSS (Cross-Site Scripting), CSRF (Cross-Site Request Forgery), trojan, zararlı javascript kodu enjekte edilmesi,gibi yöntemler uygulanabilir.
  • Oturum Sabitleme (Session Fixation): Kurbanın oturumu saldırganın oturum ID değerine sabitlenir. Kurbanın kandırılması ile oturum ID değeri saldırgan tarafından bilinmiş olur.
  • Oturum Tekrarlama (Session Replay): Araya girilerek kaydedilen kimlik doğrulama bilgileri (authentication token) sunucuya gönderilerek, kurbanın kimliğine bürülür ve yetkisiz erişim elde edilir.
Ağ Seviyesinde Oturum Çalma Yöntemleri:
  • TCP/IP Hijacking: Saldırgan, kurban istemcinin IP adresini taklit eder (Spoof). Doğru Sequence ID değerini bulana dek, kurbandan geliyormuş gibi, sunucuya paketler yollar. Yanlış denemeler sırasında, kurbana, kendi başlatmamış olduğu oturumlara ait ACK paketleri döneceği için bu paketler kurban tarafından düşürülür. Sonunda, saldırgan, Sequence numarasını tutturarak, oturumu ele geçirir. Bu saldırıda, kurban ve saldırgan aynı ağda olmalıdır.
  • RST Hijacking: Saldırgan, sunucunun IP adresini taklit eder. Doğru ACK numarasını bulduktan sonra, kurbana RST yollanır ve kurban istemcinin oturumu düşürülmüş olur.
  • Man in the Middle (MITM): Kurban ve sunucu arasına girilerek ağ dinlenir.
  • IP Spoofing: Saldırgan bilgisayarında yönetici (Administrator/root) hakkına sahip olmalıdır. Saldırgan, kaynak adresi farklı olacak şekilde kurbana paket yollar.
  • Blind Hijacking: Farklı ağda gerçekleşen bağlantıya (NFS, Telnet, IRC gibi) ait TCP Sequence numarası tahmin edilmeye çalışılır. Oturum ID değeri bulunduğu zaman zararlı veri/komut, bu pakete enjekte edilir. Saldırgan farklı ağda olduğu için ağı dinleyemez ve spoof edemez.
  • UDP Hijacking: Kurban, sunucuya bir UDP talebinde bulunduğu zaman araya girmiş olan saldırgan, sunucudan daha önce cevap verir (veya sunucunun cevabını düşürür) ve bu UDP paketine istediği veriyi ekleyebilir.

Ağ seviyesindeki (OSI 3. ve 4. katmandaki) bu saldırılarla, uygulama seviyesinde yetkiye sahip olunabilir.

2)İz Takibi :

Bu güvenlik zaafiyeti birden fazla siteye tek bir elde yerleştirilen çerezlerde olur. Örneğin reklam yayını yapan bir şirket, reklamını yayınladığı yerlerde aynı zamanda çerezini de yayınlayabilir.  Bu tip çerezlere, üçüncü parti çerezler (third party cookies) ismi verilir. Bunun sebebi sitenin esas yayıncısı ve siteyi o anda ziyaret etmekte olan istemci (client) dışında üçüncü bir kişinin çerezi olmasıdır.

İşte bu üçüncü parti çerezler siteyi ziyaret eden kişinin bilgisayarına kaydedilir. Şayet reklam veren şirket isterse ziyaretçinin girdiği bütün sitelerin izini sürebilir. Yani reklamının yayınlandığı hangi sitelerin kullanıcı tarafından ziyaret edildiğini takip etmesi mümkündür.

3)Siteler Arası İstek Sahteciliği (CSRF / XSRF) :

CSRF (Cross-Site Request Forgery) yani siteler arası istek sahteciliği, kullanıcı browserından hedefe yönelen her isteğe cookie ya da browserdaki credentialsların eklenmesinden hareketle, hedefteki bir durumun, tarayıcı tarafından gönderilen bu yetkiler ile değiştirilebilmesi zafiyetine verilen isimdir.Diğer bir tanımıyla web uygulamasını kullanmakta olan kullanıcıların istekleri dışında işlemler yürütülmesidir. Uygulamaya giden isteklerin hangi kaynaktan ve nasıl gönderildiği kontrol edilmeyen sistemlerde ortaya çıkan bu zafiyet, aslında uygulamayı kodlayan yazılımcıların gözünden kaçan bir ayrıntıdır diyebiliriz. Genelde CSRF veya XSRF şeklinde kısaltılan bu güvenlik açığı “Session Ridding” olarak da bilinmektedir.

Bu zafiyet ; zamanının en popüler saldırı türlerindendir. Günümüz de bile bu zafiyetin mekanizması ve önemi tam olarak anlaşılmadığından web uygulamalarının çoğunda CSRF bulunmaktadır.

Kötü amaçlı bir web sitesinin bu tür komutları iletmesinin birçok yolu vardır; örneğin, özel olarak hazırlanmış resim etiketleri, gizli formlar ve JavaScript   XMLHttpRequests, kullanıcının etkileşimi ve hatta bilgisi olmadan çalışabilir.

Bir CSRF saldırısının işe yaraması için, saldırganın, hedef sayfada bir hesap parolasını değiştirmek gibi belirli bir eylemi gerçekleştiren tekrarlanabilir bir web isteği belirlemesi gerekir. Böyle bir istek belirlendikten sonra, bu kötü niyetli isteği oluşturan bir bağlantı oluşturulabilir ve bu bağlantı, saldırganın denetimi dahilindeki bir sayfaya yerleştirilebilir. Bu bağlantı, mağdurun bağlantıya tıklamasına bile gerek kalmayacak şekilde yerleştirilebilir. Örneğin, kurban e-postasını açtığında otomatik olarak yüklenecek olan kurbana gönderilen bir e-postadaki bir html resim etiketi içine yerleştirilmiş olabilir. Kurban bağlantıya tıkladığında, tarayıcısı o web sitesi tarafından kullanılan tüm çerezleri otomatik olarak içerecek ve talebi web sunucusuna gönderecektir. Web sunucusu sahteciliği tanımlayamayacaktır çünkü istek, oturum açmış bir kullanıcı tarafından yapılmıştır ve gerekli tüm çerezleri göndermiştir.

Bu saldırılar genelde formlar üzerinden gerçekleştiğinden ;

  • GET Metodu İle Saldırma.
  • POST Metodu İle Saldırma.

csrf

4)Ağ Dinleme (Sniffing) :

Bir ağdaki trafik, gönderen ve alıcı dışındaki ağdaki bilgisayarlar tarafından kesilebilir ve okunabilir (özellikle şifrelenmemiş açık Wİ-Fİ üzerinden  ). Bu trafik, sıradan şifrelenmemiş HTTP oturumlarında  gönderilen çerezleri içerir . Ağ trafiğinin şifrelenmediği durumlarda saldırganlar,  HTTP tanımlama bilgileri ve konuşmaların tüm içeriği dahil olmak üzere ağdaki diğer kullanıcıların iletişimlerini okuyabilir .

Bir saldırgan, bir kullanıcının kimliğine bürünmek ve kurbanın banka hesabından para transferi gibi kötü niyetli bir görevi gerçekleştirmek için ele geçirilen çerezleri kullanabilir.

Bu sorun , bağlantıyı şifrelemek için HTTPS  protokolü  kullanılarak kullanıcının bilgisayarı ile sunucu arasındaki iletişimi güvence altına alarak çözülebilir . Bir sunucu, Secure bir tanımlama bilgisi ayarlarken bayrağı belirleyebilir ve bu, tarayıcının tanımlama bilgisini yalnızca TLS bağlantısı gibi şifrelenmiş bir kanal üzerinden göndermesine neden olur.

Dinleyici (Sniffing) Çeşitleri:
  • Pasif Dinleyici (Sniffing): bir bağlantı noktası aracılığıyla, trafiğin tüm portlara gönderildiği bir bağlantı noktası üstünden dinleme yapmaktır. Ek veri paketleri göndermeden başkaları tarafından gönderilen paketleri izler. Günümüzde bağlantı noktası (hub) kullanılmaz. Yeni ağlarda yönlendirici (switch) tercih edilir.
  • Aktif Dinleyici (Sniffing): Yönlendirici (switch)tabanlı ağı dinlemektir. Yönlendiricinin (switch) CAM’ini (Content Addressable Memory/İçerik Adreslenebilir Bellek) basmak için ağa ARP enjekte eder .CAM hostun bağlı olduğu portun izini tutar.

Aktif Sniffing Teknikleri;

  • Eavesdropping: Küçültme saldırıları, ağ trafiğinin durdurulmasıyla gerçekleşir. Gizlice dinleyerek, saldırgan bir kullanıcının ağ üzerinden gönderebileceği şifreleri, kredi kartı numaralarını ve diğer gizli bilgileri alabilir.
  • Packet Sniffing:Aynı cihaz üzerinden aynı ağa bağlı olan birden fazla bilgisayar arasında bir bilgisayar diğer bilgisayarların ağ trafiğini dinleyebilir.
  • MAC Flooding: Ağı aktif olarak dinleme yöntemlerinden biridir. Atak yapan bilgisayarın hızlı bir şekilde gönderdiği binlerce MAC (Media Access Control – Ortam Erişim Kontrolü) adresi ile anahtarlayıcının sahip olduğu MAC adres tablosu dolarsa bu olay Mac Flooding olarak adlandırılır.
  • MITM: Kurban ve sunucu arasına girilerek ağ dinlenir.
  • DNS Poisoning: LAN’a bağlı olup paketleri dinleyebilen kişi bu tekniği kullanabilir hale gelmiştir. Router üzerinde ARP zehirlemesi kullanarak çalışır.
  • ARP Poisoning: ARP paketleri saldırgana veri yollamak için sahte olabilirler. Yönlendiriciye (switch) aşırı yükleme yapmak (overload) için birçok sahte ARP talep ve yanıt paketleri oluşturulur. ARP tablosu sızdırılmış ARP yanıtlarıyla baskılandıktan sonra switch forwarding (iletme) moduna geçer ve saldırgan ağdaki tüm paketleri dinleyebilir. Hedef bilgisayarın ARP cache’ine (önbellek) sahte girdiler flood edilir. XArp, ARP saldırılarını belirleyip özel verileri tutar. ARP saldırıları için tüm subnetleri izlemeyi sağlar.
  • DHCP Saldırıları:
  • Switch Portu Çalma (Stealing): Paketleri dinlemek için MAC baskını (flooding) kullanır. Saldırgan yönlendiriciye (switch) hedef MAC adresi kendi, kaynak MAC adresi kurbanın olan sahte ARP paketleri basar. Saldırganın bastığı paketler ve kurbanın paketleri aynı anda yönlendiriciye (switch) ulaşmaya çalışacaktır bu yüzden switch, devamlı olarak iki farklı port arasına bağlanan (bind) MAC adresini değiştirmek zorunda kalır. Bu durumda saldırgan yeterince hızlıysa istenilen kurban paketlerini kendi switch portuna yönlendirebilir. Saldırgan artık kurbanın switch portunu çalmayı başarıp çalınmış porta kurbanın IP adresini öğrenmek için ARP talebi yollar.
  • Kandırma (Spoofing): MAC Kopyalamaya (Spoofing/Duplicating) aktif olarak bir yönlendirici (switch) portuna bağlı istemcilerin MAC adresleri için ağı dinleyip o adreslerden birini yeniden kullanarak yapılır. Ağdaki trafiğini dinleyerek kötücül bir kullanıcı gönderilen tüm trafiği almak için ağdaki kullanıcının MAC adresini ele geçirip kullanabilir. Bu saldırıyla ağa erişim sağlanıp ağdaki birinin kimliği ele geçirilir.

Dinleme / Koklama araçları;

  • SteelCentralPacket Analyzer
  • Wireshark
  • Tcpdump
  • Windump
  • Capsa Network Analyzer
  • OmniPeek Network Analyzer
  • Observer
  • Sniff-O-Matic
  • Colasoft Packet Builder
  • RSA NetWitness Investigator
5)Siteler Arası Komut Dosyası Oluşturma(XSS) :

XSS (Cross Site Scripting) script kodları üzerinden (genelde javascript) bir web sayfasına saldırı yapılmasıdır.Kurbanının web tarayıcısında veya komut dosyası uygulamasında komut dosyalarını çalıştırmak için üçüncü parti web kaynaklarını ve çerezleri kullanır. XSS saldırılarının hedefinde cookielerin (tanımlama bilgilerinin) çalınması amacı yatar. Bu saldırıların yapılabilmesi için, Get ve post metodları ile verilerin alındığı yorum kısımları, ziyaretçi defterleri, arama yapılan kutular, şifre girilen kısımlara yazılmış kodların kullanılması ile XSS açıklıkları sömürülebilir.

XSS Türleri:
  • Reflected XSS: Kullanıcının girilmesi beklenen parametre yerine Javascript  kodu girerek bunu ekrana yansıtması ile tespit edilebilen XSS çeşitidir. XSS açığı bulunan bir siteden, sitenin üyesine zararlı kodalar içeren linkin gönderilmesi ile son kullanıcının linke tıklaması halinde saldırı yapan kişinin hazırlamış olduğu zararlı siteye yönlendirilmesi ile üyenin kullanıcı bilgilerinin çalınması olayı Reflected XSS saldırısına örnek verilebilir.

  • Stored/Persistent XSS: Adında anlaşılacağı üzere kalıcı XSS türüdür.Bu sefer girilen payloadlar anlık olarak yansımaz bir veritabanına yada başka bir yere kayıt edilir daha sonradan ziyaret edildiğinde çalışan XSS çeşitidir. Saldırgan son kullanıcıdan ziyade web sitelerine saldırı düzenler. Saldırı yapacak kişi web sitesinde yada forumda yeni bir başlık yada alan açarak zararlı kodları, örneğin―<script>alert(document.cookie)</script>‖gibi,siteye gömer. Atak yapan kişinin hazırladığı yere gelen son kullanıcıların cookie bilgilerinin çalınması ile yapılan saldırı türüdür.

  • Dom XSS: Dom (Document Object Model) XSS Dom lardan kaynaklanan XSS dir.Gemelde # işaretinden sonra payload denenmesi ve sayfa yenilendiğinde alert alındığında DOM XSS var denilen XSS açıklığıdır.
6)Çerezlerin Zehirlenmesi (Cookies Poisoning) :

Çerez zehirlenmesi aynı zamanda oturum kaçırma olarak da bilinir.Saldırganın verileri çalmak, güvenliği atlamak veya her ikisini birden yapmak için sunucuya geri gönderilen geçerli bir çerezi değiştirdiği, sahtesini yaptığı, ele geçirdiği veya başka bir şekilde “zehirlediği” bir saldırı stratejisidir.

Güvenli bir şekilde oluşturulmayan veya iletilmeyen çerezler (veya diğer oturum jetonları), çalınma veya zehirlenmeye karşı savunmasızdır. XSS  , tanımlama bilgilerini çalmanın  yaygın bir yoludur, ancak tanımlama bilgilerine yetkisiz erişim sağlamak için paket koklama ve kaba kuvvet dahil olmak üzere bir dizi yöntem kullanılabilir. Çerez zehirlenmesi, çerezleri içeren çok sayıda kötü amaçlı etkinlik için her şeyi kapsayan bir terim olduğundan, bir çerez zehirlenmesi istismarı, diğer terimlerin yanı sıra, doğru bir şekilde ortadaki adam saldırısı veya oturum kaçırma, sabitleme veya sahtecilik olarak da tanımlanabilir.

Çerez Zehirlenme Türleri:
  • ARP Poisoning: Bilgisayar ağlarında ,ARP zehirlenmesi (ARP önbellek sahtekarlığı veya ARP zehri yönlendirme) saldırganın yerel alan ağı   üzerinden sahte ARP mesajları göndermesi şeklinde tanımlanabilir. Saldırının amacı genellikle, saldırganın MAC adresini , başka bir uç sistemin (örneğin varsayılan ağ geçidi )IP adresiyle bağdaştırarak bu adresinin ağ trafiğini, saldırganın kendi makinesi üzerine yönlendirmesidir.ARP zehirlenmesi, saldırganın bir ağdaki veri çerçevelerine müdahale etmesine, trafiği değiştirmesine veya tüm trafiği durdurmasına olanak sağlar. Çoğu zaman saldırı,hizmet reddi ,ortadaki adam veya oturum kaçırma saldırıları gibi diğer saldırılara kapı açar.Saldırı yalnızca ARP protokolü kullanan ağlarda mümkündür. Saldırının gerçekleştirilebilmesi için yerel ağ kesimine saldırganın doğrudan erişimi gereklidir.
  • DOM Poisoning:DOM zehirlenme.
  • DNS Poisoning: DNS sunucuyu gerçek bilgiyi aldığına dair kandırmaktır. Web adreslerini sayısal IP adreslerine dönüştüren DNS seviyesinde sahte IP adresleri yer alır. Saldırgan kontrol ettiği sunucunun IP adresiyle verilen DNS sunucudaki hedef sitenin IP adres girdilerini değiştirir. Saldırgan sunucu için hedef sunucudakiyle aynı isme sahip taklit DNS girdileri oluşturabilir.
  • Basic Poisoning:Basit zehirlenme.
  • Discreet Poisoning:Gizli zehirlenme.
  • Route Poisoning:Güzergah zehirlenme.
  • Selective Poisoning:Seçici zehirlenme. HTTP başlıkları, önbelleklerin çalışmalarına zaman kazandıran bilgiler sağlayabilir.
ÇEREZLERDEKİ GÜVENLİK ZAFİYETLERİNE KARŞI ÖNLEMLER
1)Oturum Saldırısı / Çerez Kaçırılması (Session Hijacking / Cookies Hijacking):
  • Trafik şifreli olması en önemli önlemlerin başında gelir. Telnet/rlogin yerine SSH, FTP yerine sFTP, HTTP yerine HTTPS, IP yerine IPSec, Uzaktan erişim için VPN, standart SMB yerine imzalanmış SMB kullanılmalıdır.
  • IPS/IDS çözümleri kullanılmalıdır.
  • Hattın yanında verinin kendisi de şifrelenmelidir. Bu amaçla veri şifrelendikten sonra hedefe iletilecek şekilde pakete dahil edilmelidir.
  • Oturum sabitleme (Session Fixation) saldırısını önlemek için, başarılı login sonrası yeni bir oturum ID oluşturulmalıdır.
  • Oturum anahtarı rastgele/karmaşık ve uzun olmalıdır.
  • Her oturum başlangıcında yeni ve güvenebilir bir oturum ID değeri kullanılmalıdır.
  • Oturum bitiminde oturum sonlanmalı istemci logout olmalıdır. Yani her yeni oturum için yeniden kimlik doğrulanmalı ve oturum anahtarları yenilenmelidir.
  • Oturum ve çerez (cookie) belli bir süreli olmalıdır. Oturum bir süre sonra, zaman aşımına uğramalıdır.
  • Oturum adedi sınırlandırılmalıdır.
  • Geçersiz oturum no (Session Id) değeri varsa, kaba kuvvet saldırılarına karşı hesap belli bir süre kilitlenmelidir. Ancak bu önlem de erişilebilirlik problemine sebep olabilir. Bu sebeple ek güvenlik önlemleri kullanılabilir. CAPTCHA, çoklu kimlik doğrulama, belirli bir süre bekletme,… gibi bu önlemlerden bazılarıdır.
  • İstemci bilgisayar güncel ve saldırıya kapalı olmalıdır. Örneğin, istemciye DNS zehirlemesi yapılmamış olmalı, web tarayıcısı güncel olmalı, işletim sistemine ait yamalar geçilmiş olmalı, vb.
  • Sunucular güncel ve güvenlik sıkılaştırmalarının yapılandırılmış olması gerekmektedir.
  • Mümkünse, ağ erişimleri kısıtlanmalıdır.
  • Yerel ağda, Hub yerine Switch kullanılmalıdır.
  • Oturum ID değeri, Query String’i olarak açık şekilde taşınmamalıdır.
  • ARP zehirlemesi ve Spoofing saldırılarına karşın gerekli önlemler alınmalıdır.
  • Kimlik doğrulaması güvenilir olmalıdır. Örneğin; Kullanıcılar karmaşık parola girmeye zorlanmalıdır ,VPN kullanılmalıdır.
  • Web tarayıcıların belleğinde geçmiş/içerik/cookie/kimlik bilgisi saklanamamalıdır
  • Mümkünse, oturumlar gizli (private / incognito) modda çalıştırılmalıdır.
  • Kullanıcılar oturum bitince Logout ile çıkış yapılmalı, sadece browser kapatılmamaldır.
  • Kullanıcı farkındalığı arttırılmalıdır.
IPSec:

Ağ seviyesinde güvenlik (gizlilik, bütünlük, kimlik doğrulama ve inkar edilememezlik) sağlar. Kurum iç ağına bağlantı için kullanılabilir. Trafik şifreli olduğu için veriler okunamaz ve MITM saldırılarından korunulur.İki temel protokolü kullanır:

  • Authentication Header (AH): Şifreleme sağlamaz, gönderenin kimlik doğrulaması ve bütünlük kontrolü gerçekleştirilir.
  • Encapsulating Security Payload (ESP): Şifreleme ve kimlik doğrulama sağlar.

IPSec iki adet şifreleme modunu destekler:

  • Transport Modu: OSI 4. katman ve üzerinde güvenlik sağlar. 2 makine arasında kimlik doğrulamayı sağlar. NAT ile uyumludur. Gerçek IP adresi değişmez. Aynı yerel ağdaki cihazlarda kullanılabilir.
  • Tünel Modu: OSI 3. katman ve üzerinde güvenlik sağlar. Transfer edilen paketin encapsule edilmesini sağlar. NAT ile uyumsuzdur. Farklı ağdaki cihazlarda kullanılabilir.
2)Siteler Arası İstek Sahteciliği(CSRF / XSRF) :
İstemci Tarafı Korumalar:

RequestPolicy (Mozilla Firefox için) veya uMatrix (hem Firefox hem de Google Chrome / Chromium için ) gibi tarayıcı uzantıları, siteler arası istekler için varsayılan bir reddetme politikası sağlayarak CSRF’yi önleyebilir. Ancak bu, birçok web sitesinin normal çalışmasına önemli ölçüde müdahale edebilir. CsFire uzantısı (ayrıca Firefox için), kimlik doğrulama bilgilerini siteler arası isteklerden kaldırarak CSRF’nin etkisini normal taramayı daha az etkileyerek azaltabilir.

NoScript’teki Application Boundary Enforcer modülü ayrıca internet sayfalarından yerel sitelere (örn. Localhost) gönderilen istekleri engelleyerek yerel hizmetlere (uTorrent gibi) veya yönlendiricilere yönelik CSRF saldırılarını önler.

Firefox için Kendi Kendini Yok Eden Çerezler uzantısı doğrudan CSRF’den koruma sağlamaz, ancak çerezleri artık açık bir sekmeyle ilişkilendirilmedikleri anda silerek saldırı penceresini azaltabilir.

POST istek yöntemi   , bir süredir URL’deki parametreleri kullanarak (GET yöntemi kullanılarak) önemsiz CSRF saldırılarına karşı bağışık olarak algılandı. Ancak, hem POST hem de diğer herhangi bir HTTP yöntemi artık XMLHttpRequest  kullanılarak kolayca yürütülebilir . Beklenmedik GET isteklerini filtrelemek, kötü amaçlı görüntü URL’leri veya bağlantı adresleri kullanan siteler arası saldırılar ve <script> öğeler yoluyla siteler arası bilgi sızıntısı ( JavaScript kaçırma ) gibi bazı belirli saldırıları hala engellemektedir ; ayrıca agresif web tarayıcıları  ve bağlantıların önceden getirilmesiyle ilgili (güvenlikle ilgili olmayan) sorunları da önler .

Çerezleri ve site verilerini düzenli olarak temizlemek oldukça önemlidir.Bilmediğiniz bağlantılara tıklamamalı, kimden geldiğini anlamadığınız mailleri açarken dikkatli olmalısınız.

SameSite çerez özelliği :

Ek bir “SameSite” özniteliği, sunucu bir tanımlama bilgisi ayarladığında, tarayıcıya tanımlama bilgisinin siteler arası isteklere eklenip eklenmeyeceği konusunda talimat verir. Bu öznitelik “katı” olarak ayarlanırsa, çerez yalnızca aynı kaynaklı isteklerde gönderilir ve CSRF’yi etkisiz hale getirir. Ancak bu, tarayıcının özelliği tanımasını ve doğru bir şekilde uygulamasını ve ayrıca tanımlama bilgisinin “Güvenli” bayrağına sahip olmasını gerektirir.

Referer Kontrolü:

Aslında bu yöntem bir “koruma yöntemi” değildir. Basit bir kontroldür ve bypass edilmesi de bir o kadar kolaydır.

Referer; bir request gönderildiği vakit o requestin hangi sayfa tarafından gönderildiğinin bilgisini taşıyan basit bir HTTP headeridir.Bir requstteki tüm headerlarin tek amacı bilgi taşımaktır. Ve requesti gönderen kişi tarafında rahatlıkla değiştirilebilmektir . Yani bu tarzda bir kontrol yazılsa bile saldırgan headerlar üzerinden oynama yapılıyor olduğundan bu korumayı çok rahatça geçebilmektedir.

CSRF Token Kullanımı:

CSRF’ten korunmanın en basit ve etkili yöntemi “token” kulanmaktır . Token; tek kullanımlık rastgele oluşturulmuş kod parçasına verilen isimdir. Çalışma mantığı;

  • Web sunucusu bir token oluşturur. (Bu token işlem yapıldıkça yeniden üretilir.)
  • Token, formda gizli bir bilgi olarak depolanır.
  • Kullanıcı POST işlemini gerçekleştirir.
  • Token bilgisi POST verilerine dahil edilir.
  • Web uygulaması, sistem tarafından oluşturulan tokeni, talepte gönderilen token ile karşılaştırır.
  • Eğer token verileri eşleşirse, isteğin gerçek kullanıcı tarafından gönderildiği anlaşılır ve istek onaylanır.
  • Eşleşme yoksa, istek reddedilir. Bu sayede kötü niyetli istekler engellenmiş olur.

Bu yöntem, Siteler Arası Talep Sahteciliği (CSRF) saldırılarına karşı koruma sağlar. Saldırganın başarılı bir saldırı yapabilmesi için hedef kullanıcının token bilgisini tahmin etmesi gerekir. Oluşturulan tokenin kalitesine bağlı olarak, tahmin edilmesi neredeyse imkansızdır. Ayrıca, her token belirli bir süre için geçerli olmalıdır ve kullanıcı oturumu kapattıktan sonra geçersiz hale getirilmelidir.

Token yönteminin düzgün bir şekilde uygulanabilmesi için, kriptografik olarak güvenli olması gerekir. Böylece; saldırganlar tarafından kolay tahmin edilemeyen, güvenilir bir araç olacaktır.

3)Ağ Dinleme (Sniffing) :
  • Paket dinleyici (sniffer) kurulmamasından emin olmak için ağ ortamına fiziksel erişimi sınırlandırmak.
  • Gizli bilgiyi korumak için şifreleme kullanmak.
  • Kalıcı olarak ARP önbelleğine ağ geçidinin (gateway) MAC adresini eklemek.
  • Ağdaki makinelere spoof edilmiş ARP girdileri eklenmesini önlemek için sabit (static) ARP tabloları ve IP adresleri kullanmak.
  • Ağ yayın (broadcast) tanımasını kapatıp (identification broadcasts) mümkünse ağı sniffing araçlarıyla keşfedilmekten korumak için yetkili kullanıcıların ağa erişimini sınırlandırmak.
  • IPv4 protokolü yerine IPv6 kullanmak.
  • Kablosuz ağ kullanıcılarını sniffing saldırılarına karşı korumak için Telnet yerine SSH, FTP yerine SCP (Secure Copy Protocol/Güvenli Kopyalama Protokolü), e-posta bağlantısı için SSL vb. gibi şifrelenmiş oturumlar kullanmak.
  • Kullanıcı adları ve parolaları korumak için HTTP yerine HTTPS kullanmak.
  • Verinin sadece istenen alıcıya iletilmesi için bağlantı noktası (hub) yerine yönlendirici (switch) kullanmak.
  • Dosyaların iletim güvenliği için FTP yerine SFTP (S=Secure / Güvenli) kullanmak.
  • Tek kullanımlık parolalar (One-time passwords/OTP) ve Secure Shell (SSH), SSL/TLS, IPSec, VPN, S/MIME (Secure Multipurpose Internet Mail Extensions/Çok amaçlı İnternet Posta Eklentileri; E-posta uygulamaları aracılığıyla gönderilecek olan iletiye çeşitli türdeki içeriği eklemek için kullanılan bir İnternet standartıdır) ve PGP (Pretty Good Privacy/Çok İyi Gizlilik; Doğru bir şekilde kullanıldığında gönderdiğiniz mesajların, metinlerin ve hatta dosyaların içeriğinin, sağlam bütçeli devlet gözetim programları tarafından dahi okunmasını engelleyebilir) kullanmak.
  • Her zaman kablosuz trafiği WPA ve WPA2 gibi güçlü şifreleme protokolüyle şifrelemek.
  • MAC’i işletim sistemi yerine NIC’ten doğrudan almak. Bu MAC Spoofing’i önler.
  • NIClerin promiscuous (seçici olmayan) modda çalışıp çalışmadığını görmek için araçlar kullanmak.
4)Siteler Arası Komut Dosyası Oluşturma(XSS) :

İçerik filtrelemenin yanı sıra, siteler arası komut dosyası azaltma için diğer kusurlu yöntemler de yaygın olarak kullanılmaktadır. Bir örnek, tanımlama bilgisi tabanlı kullanıcı kimlik doğrulamasını işlerken ek güvenlik kontrollerinin kullanılmasıdır . Birçok web uygulaması, bireysel HTTP istekleri arasındaki kimlik doğrulaması için oturum tanımlama bilgilerine güvenir ve istemci tarafındaki komut dosyaları genellikle bu tanımlama bilgilerine erişime sahip olduğundan, basit XSS açıkları bu tanımlama bilgilerini çalabilir. Bu özel tehdidi azaltmak için (genel olarak XSS sorunu olmasa da), birçok web uygulaması oturum tanımlama bilgilerini ilk oturum açan kullanıcının IP adresine bağlar, ardından yalnızca bu IP’nin bu tanımlama bilgisini kullanmasına izin verir.Bu, çoğu durumda etkilidir (bir saldırgan yalnızca çerezin peşindeyse ), ancak bir saldırganın kurbanla aynı NAT IP adresinin veya web proxy’sinin arkasında olduğu veya kurbanın mobil IP’sini değiştirdiği durumlarda açıkça başarısız olur.

Başka bir hafifletme mevcut Internet Explorer (sürüm 6 beri), Firefox (sürüm 2.0.0.5 beri), Safari (sürüm 4 beri), Opera ve (9.5 sürümüne beri) Google Chrome, bir olan HttpOnly set a bir web sunucusu verir bayrak istemci tarafı komut dosyalarında kullanılamayan tanımlama bilgisi. Yararlı olsa da, özellik çerez hırsızlığını tam olarak önleyemez veya tarayıcı içindeki saldırıları önleyemez.

Diğer önlemler ;

  • Arama girdisi, uygun kodlama kontrolünü içerecek şekilde sterilize edilebilir.
  • Web sunucusu geçersiz istekleri yönlendirecek şekilde ayarlanabilir.
  • Web sunucusu eşzamanlı girişi tespit edebilir ve oturumları sonlandırabilir.
  • Web sunucusu iki farklı IP adresinden eşzamanlı girişi tespit edebilir ve oturumları sonlandırabilir.
  • Web sitesi daha önce kullanılan kredi kartı numarasının sadece birkaç hanesini gösterebilir.
  • Web sitesi kullanıcıların kayıt bilgilerini değiştirmeden önce tekrar parolalarını girmelerini gerektirebilir.
  • Web sitesi İçerik Güvenlik Politikası’nın pek çok farklı yönünü kullanabilir.
  • Kullanıcılar, “tehlikesiz gözüken” ancak kötücül olan linklere tıklamamaları konusunda eğitilebilir.
  • Çerez HttpOnly bayrağı ile işaretlenerek JavaScript’in çereze erişimi engellenebilir.
5)Çerezlerin Zehirlenmesi (Cookies Poisoning) :

Kendinizi önbellek zehirlenmesi saldırılarına karşı korumak oldukça zor olabilir. Önbelleği tamamen devre dışı bırakmak, çoğu zaman uygulanabilir olmayan bir yöntemdir. Bu nedenle bazı yararlı yöntemler şunlardır;

  • *.Js, * .css, * .png dosyaları, blog gönderileri, açılış sayfaları veya her zaman aynı olan herhangi bir sayfa gibi statik yanıtları önbelleğe alın.
  • Bu tür bir güvenlik açığı durumunda bile, kullanıcının tarayıcısından yararlanılmaması için Siteler Arası Betik Çalıştırma (XSS) gibi saldırılarına karşı savunmasız olmadığınızdan emin olun.
  • Önbelleğin nerede yapıldığını anlayın ve kısıtlayın.
  • Önbellek anahtarı olarak kullanıcı girişlerini (HTTP Başlıkları) kullanmaktan kaçının.
Aleyna Düz