Çerez "Güvenli" işareti nasıl çalışır?


103

secureBayraklı bir çerezin şifrelenmemiş bir bağlantı üzerinden gönderilmeyeceğini biliyorum . Bunun nasıl derinlemesine çalıştığını merak ediyorum.

Çerezin gönderilip gönderilmeyeceğini belirlemekten kim sorumludur?

Yanıtlar:


93

İstemci bunu yalnızca şifreli bağlantılar için ayarlar ve bu, RFC 6265'te tanımlanır :

Secure özniteliği, tanımlama bilgisinin kapsamını "güvenli" kanallarla sınırlar (burada "güvenli", kullanıcı aracısı tarafından tanımlanır). Bir tanımlama bilgisi Secure özniteliğine sahip olduğunda, kullanıcı aracısı tanımlama bilgisini bir HTTP isteğine, yalnızca istek güvenli bir kanal üzerinden iletilirse (genellikle Taşıma Katmanı Güvenliği üzerinden HTTP (TLS) [RFC2818]) ekler.

Çerezleri etkin ağ saldırganlarından korumak için görünüşte yararlı olsa da, Secure özelliği yalnızca çerezin gizliliğini korur. Etkin bir ağ saldırganı, güvenli olmayan bir kanaldan Güvenli tanımlama bilgilerinin üzerine yazabilir ve bütünlüklerini bozabilir (daha fazla ayrıntı için Bölüm 8.6'ya bakın).


4
İstemci tarafında henüz tanımlama bilgisi yoksa ve sunucu tarafından gönderilmeleri gerekiyorsa (örneğin oturum açma) yanıt olarak tanımlama bilgisini dahil etmeye karar verecek kişi sunucu tarafı mı olacak?
ted

3
Sunucu başlangıçta çerezleri "Set-Cookie üstbilgileri" aracılığıyla ayarlar
Ivan

51

Konuyla ilgili başka bir kelime:

secureWeb siteniz example.comtam olarak https olduğu için atlamak yeterli değildir.

Kullanıcınız açıkça ulaşıyorsa http://example.com, adresine yeniden yönlendirilecektir, https://example.comancak bu artık çok geç; ilk istek çerezi içeriyordu.


6
Bunun eski olduğunu biliyorum, ancak HSTS önyüklemesi, bu sorunun sık sık ortaya çıkmasını önleyerek bu duruma yardımcı olur. Hala% 100 düzeltme değil, ancak gerçekten güvenli çerezden kaçınmak isteyip istemediğinizi düşünmeniz gereken başka bir şey.
Bay MonoChrome

5
@ Mr.MonoChrome Neden güvenli çerezden kaçınmak istersiniz?
MEMark

@ Mr.MonoChrome bazı eski veya düşük Spec tarayıcılar, inanıyorum, hatta HSTS desteklemez olsa
oldboy

1
İyi bir nokta. .NET uygulamaları için yeniden yönlendirmeyi programlı olarak (örneğin globals.asax) yerine IIS'de (veya web.config) yapmak daha iyidir
piris

Öyleyse, http'den https'ye yönlendirme yapmıyor ve yalnızca https üzerinden hizmet veriyor olsaydınız, ihtiyacınız olmaz mıydı secure?
05'te frenler
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.