HTTPS başlıkları şifreli mi?


599

HTTPS üzerinden veri gönderirken içeriğin şifreli olduğunu biliyorum, ancak üstbilgilerin şifrelenip şifrelenmediği veya üstbilginin ne kadarının şifrelenmiş olduğu hakkında karışık yanıtlar duyuyorum.

Başlıkları ne kadar HTTPS edilir şifreli?

GET / POST istek URL'leri, Çerezler vb. Dahil


9
HTTPS üzerinden HTTP Üstbilgileri şifrelenir ve ayrıca HTTP Sıkıştırılmış değildir (gövde olsa bile). Bu onları BEAST gibi sıkıştırmayla ilgili saldırılara karşı daha az savunmasız hale getirir
Neil McGuigan

Yanıtlar:


551

Tüm lot şifrelenir - tüm başlıklar. Bu yüzden vhosts'daki SSL çok iyi çalışmıyor - Ana bilgisayar başlığı şifreli olduğu için özel bir IP adresine ihtiyacınız var.

Sunucu Adı Tanımlama (SNI) standardı, TLS kullanıyorsanız ana bilgisayar adının şifrelenmeyebileceği anlamına gelir. Ayrıca, SNI kullansanız da kullanmasanız da, TCP ve IP başlıkları asla şifrelenmez. (Eğer olsaydı, paketleriniz yönlendirilemezdi.)


3
@Greg, Vhost ağ geçidine izin verildiğinden, ağ geçidi bunların şifresini çözemedi mi, Host başlığını gözlemleyemedi, ardından hangi ana bilgisayarı paketleri göndereceğini belirleyemedi mi?
Pacerier

2
Afaik URL'nin kendisi şifreli değil.
Teddy

4
@Teddu "URL'nin kendisi şifreli değil" ile ne demek istiyorsun. Başlığın bir parçası olduğu için şifrelenir.
Dmitry Polushkin

1
Fiddler https iletişimini yakalamak için kullanılıyorsa, yine de bazı başlıklar görüntülüyor, neden? Özellikle, internet bağlantısı kimlik doğrulaması gerektiren bir proxy üzerinden yapıldığında, istek ilk gönderimde 407 alındıktan sonra yeniden gönderildiğinde Proxy-Authorization üstbilgisini görüntüler.
Bochen Lin

1
@ Pegasus da aynı şekilde Bochen. HTTPS tünelinin her iki ucundaysanız, her şeyi görebilirsiniz. Aynı şekilde tarayıcı cihazlarında bir şey görebiliyorum.
Nux

97

Üstbilgiler tamamen şifrelenir. Ağ üzerinden 'anlaşılır' olan tek bilgi SSL kurulumu ve D / H anahtar değişimi ile ilgilidir. Bu değişim dikkatlice dinleyenlere yararlı bilgi vermeyecek şekilde tasarlanmıştır ve gerçekleştikten sonra tüm veriler şifrelenir.


4
Tüm SSL kurulumları DH
Dori

30
Biraz bilgiç olmak için: İstemcinin ve sunucunun IP adresi, sunucunun ana bilgisayar adı ve SSL uygulamalarıyla ilgili sinyaller kulak misafiri olanlar için yararlıdır ve görülebilir.
poolie

66

Eski soruya yeni cevap, üzgünüm. 0,02 TL’yi ekleyeceğimi düşündüm

OP başlıkların şifrelenip şifrelenmediğini sordu.

Bunlar: transit.

Bunlar DEĞİLDİR: transit olmadığında.

Böylece, tarayıcınızın URL'si (ve bazı durumlarda başlık) sorgu dizesini (genellikle en hassas ayrıntıları içerir) ve başlıkta bazı ayrıntıları görüntüleyebilir; tarayıcı bazı başlık bilgilerini bilir (içerik türü, unicode, vb.); tarayıcı geçmişi, şifre yönetimi, sık kullanılanlar / yer imleri ve önbelleğe alınmış sayfaların tümü sorgu dizesini içerir. Uzak uçtaki sunucu günlükleri, bazı içerik ayrıntılarının yanı sıra sorgu dizesi de içerebilir.

Ayrıca, URL her zaman güvenli değildir: etki alanı, protokol ve bağlantı noktası görünür - aksi takdirde yönlendiriciler isteklerinizi nereye göndereceğinizi bilmez.

Ayrıca, bir HTTP proxy'niz varsa, proxy sunucusu adresi bilir, genellikle tam sorgu dizesini bilmezler.

Veriler hareket ediyorsa, genellikle korunur. Transit değilse, şifrelenmez.

Nit pick için değil, ancak sonunda verilerin şifresi çözülür ve isteğe bağlı olarak ayrıştırılabilir, okunabilir, kaydedilebilir, iletilebilir veya atılabilir. Ve her iki taraftaki kötü amaçlı yazılımlar, HTTPS içindeki bir sayfanın içindeki (kötü) Javascript gibi SSL protokolüne giren (veya çıkan) verilerin anlık görüntülerini alabilir; genellikle kısıtlıdır ve yararlı değildir).

Ayrıca çerezler HTTPS protokolü altında şifrelenmez. Hassas verileri çerezlerde (veya bu konuda başka bir yerde) saklamak isteyen geliştiricilerin kendi şifreleme mekanizmalarını kullanmaları gerekir.

Önbelleğe gelince, çoğu modern tarayıcı HTTPS sayfalarını önbelleğe almaz, ancak bu gerçek HTTPS protokolü tarafından tanımlanmaz, HTTPS üzerinden alınan sayfaları önbelleğe almadığınızdan emin olmak tamamen bir tarayıcının geliştiricisine bağlıdır.

Paket koklama konusunda endişeleriniz varsa, muhtemelen iyisinizdir. Ancak kötü amaçlı yazılımlardan veya geçmişinizi, yer işaretlerinizi, çerezlerinizi veya önbelleğinizi inceleyen birinden endişeleniyorsanız, henüz sudan çıkmadınız.


20
İyi cevapların üstte olduğunu biliyorum, ama bu bir kez daha hatalı bilgi ekliyor . Alan olduğu değil SNI kullanılmadıkça, görünür. IP ve TCP dışındaki Protokol vardır değil görünür. HTTP 1.1, SPDY veya HTTP2 kullanıp kullanmadığımı söyleyemezsiniz. Şifrelemenin amacı, şeyleri görünmez yapmak değil, yalnızca güvenilir taraflar için görünür kılmaktır . Böylece sorudaki uç noktalar ima edilir ve cevabınızın yaklaşık 2 / 3'ü kaldırılabilir. Proxy bilgileri şu şekilde olmalıdır: HTTPS proxy kullanıyorsanız, her şeye erişimi vardır .
Melvyn

6
Bağlantınız özellikle çerezlerin şifreli olduğunu söylüyor: "Ziyaretçinin bağlantısı şifrelenerek URL'leri, çerezleri ve diğer hassas meta verileri gizliyor."
DylanYoung

1
Evet doğru. Çerezler aktarım sırasında şifrelenir, ancak tarayıcıya ulaştıktan sonra SSL protokolü tarafından şifrelenmezler. Bir geliştiricinin çerez verilerini şifrelemesi mümkündür, ancak bu SSL için kapsam dışıdır.
Andrew Jennings

4
@DylanYoung SSL = güvenli yuva katmanı; TLS = taşıma katmanı güvenliği. Şifreleme soket (bağlantı) düzeyindedir veya her etki alanı veritabanı için tarayıcıda saklanmadığı sürece taşıma düzeyine başka bir yol koymaktır.
curiousguy

@Wigwam Güvenliğe duyarlı HTTP çerezleri, kimliği doğrulanmış oturumların sunucu veritabanındaki bir kayda neredeyse her zaman opak referanslardır (genellikle kriptografik olarak güçlü bir rasgele sayıdır). Bu nedenle bu anlamsız tanımlayıcının şifrelenmesi çoğunlukla ek karmaşıklık getirir.
curiousguy

53

HTTP sürüm 1.1, gerekli protokol anlaşması ve kriptografik kurulum da dahil olmak üzere SSL tüneli oluşturmayı amaçlayan özel bir HTTP yöntemi olan CONNECT'i ekledi.
Bundan sonra normal isteklerin tümü SSL tüneli, üstbilgileri ve gövdeye dahil edilir.


SSL tüneli oluşturmak için CONNECT ne zaman kullanılır?
curiousguy


47

SSL ile şifreleme aktarım düzeyindedir, bu nedenle bir istek gönderilmeden önce gerçekleşir.

Böylece istekteki her şey şifrelenir.


SSL, taşıma katmanında gerçekleştiğinden ve hedef adresin paketler halinde (başlıkta) atanması ağ katmanında (aktarımın altında olan) gerçekleştiğinden, başlıklar nasıl şifrelenir?
Prateek Joshi

@PrateekJoshi Çünkü HTTP üstbilgileri uygulama katmanında yaşar ve bu nedenle varsayılan olarak, alt / ata katmanının şifrelenmesi nedeniyle şifrelenir.
Aquarelle

40

HTTPS (SSL üzerinden HTTP) tüm HTTP içeriğini bir SSL tüneli üzerinden gönderir, böylece HTTP içeriği ve başlıkları da şifrelenir.


21

Evet, başlıklar şifreli. Bu yazılı burada .

HTTPS iletisindeki her şey, başlıklar ve istek / yanıt yükü dahil olmak üzere şifrelenir.


37
Vikipedi spesifikasyon değil, alıntı yapmanız gereken şey bu.
Aran Mulholland

8

URL de şifrelenir, gerçekten sadece IP, Port ve şifrelenmemiş ana bilgisayar adı olan SNI'ya sahip olursunuz.


SNI desteklenmese bile, HTTP bağlantılarını yakalayabilen bir aracı genellikle DNS sorularını da izleyebilir (çoğu müdahale, korsan bir kullanıcı yönlendiricisinde olduğu gibi istemci yakınında yapılır). Böylece DNS adlarını görebilecekler.
curiousguy
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.