Apple, Cloudflare, Fastly ve Mozilla, SNI'yı Şifrelemek İçin Çözüm Geliştirdi

Güvenlik / Apple, Cloudflare, Fastly ve Mozilla, SNI'yı Şifrelemek İçin Çözüm Geliştirdi 5 dakika okundu

Apple, Cloudflare, Fastly ve Mozilla'nın Cloudflare’dan Nick Sullivan’dan bir tweet ile belirtildiği gibi IETF 102 Hackathon’da HTTPS’nin Sunucu Adı Tanımlama mekanizmasının şifrelenmesini geliştirmek için işbirliği yaptıkları haberi geldi. Tweet, dört teknoloji devinin karma ekibini 'Harika iş' diyerek ve şuradaki çalışan sunucuların bağlantıları altında paylaşarak tebrik etti. esni.examp1e.net ve cloudflare-esni.com .



IETF Hackathon, genç geliştiricileri ve teknoloji meraklılarını, günümüzde ortak kullanıcının karşılaştığı teknolojiyle ilgili sorunlara yönelik çözümlerin hazırlanmasında liderlere katılmaya davet eden bir platformdur. Etkinliklere katılmak ücretsizdir, herkese açıktır ve rekabete karşı ekip çalışmasını teşvik ederler. Bu yılki IETF Hackathon, 14'te Montreal'de yapıldı.incive 15inciTemmuz ayının. Görünüşe göre bundan çıkacak en önemli başarı, Apple, Cloudflare, Fastly üyelerinin son on yıldır geliştiricileri rahatsız eden bir sorun olan Taşıma Katmanı Güvenliği (TLS) Sunucu Adı Göstergesinin (SNI) şifrelenmesidir. ve Mozilla şimdi için bir çözüm önerdi.



IETF Hackathon Etkinliği. IETF

Geçtiğimiz on buçuk yılda Köprü Metni Aktarım Protokolünden (HTTP) Aktarım Katmanı Güvenliği Sunucu Adı Göstergesi Güvenli Köprü Metni Aktarım Protokolü'ne (TLS SNI HTTPS) açık bir küresel geçiş olmuştur. sorun TLS SNI HTTPS sistemini optimize etmekten doğan bu, bilgisayar korsanının daha sonra şifre çözme için veri aktarımını eşleştirme amacına karşı SNI kullanma becerisiydi.

SNI geliştirilmeden önce, aynı ilk istemci el sıkışmasını kullanarak birden çok sanal sunucuya güvenli bağlantı kurmak zordu. Bir IP adresi bir sunucuyla etkileşime girdiğinde, ikisi 'merhaba' değiştirdiğinde, sunucu sertifikalarını gönderdi, bilgisayar istemci anahtarını, iki 'ChangeCipherSpec' komutunu gönderdi ve sonra bağlantı kurulduğunda etkileşim sona erdi. Bu, az önce söylendiği gibi kulağa kolay gelebilir, ancak süreç, iletişim kurulmakta olan sunucuların sayısı arttıkça oldukça sorunlu hale gelmeyi kolayca başaran birden çok alışveriş ve yanıt içeriyordu. Tüm siteler aynı sertifikaları kullandıysa, o zaman bu çok fazla sorun değildi, ancak maalesef durum nadiren böyleydi. Birden fazla site, çeşitli sertifikaları ileri geri gönderirken, sunucunun bilgisayarın hangi sertifikayı aradığını belirlemesi zordu ve karmaşık değişim ağında, kimin neyi ne zaman gönderdiğini belirlemek zorlaştı ve böylece tüm faaliyet sona erdirildi. tamamen bir uyarı mesajı ile.



TLS SNI daha sonra 2003 yılının Haziran ayında bir IETF zirvesi ile tanıtıldı ve hizmet ettiği amaç bir anlamda değişim ağına dahil olan bilgisayarlar ve hizmetler için ad etiketleri oluşturmaktı. Bu, sunucu-istemci merhaba değişim sürecini çok daha kolay hale getirdi, çünkü sunucu ihtiyaç duyulan kesin sertifikaları sağlayabiliyor ve ikisi kimin ne dediği konusunda kafaları karışmadan kendi sohbet alışverişlerini yapabiliyorlardı. Biraz sohbetler için kişi adlarına sahip olmak ve mesajların nereden geldiği konusunda kafa karıştırmamak ve ayrıca her bir sorguya uygun şekilde yanıt vererek hangi bilgisayarın ihtiyacı olursa olsun doğru belgeleri sağlamak gibidir. Bu SNI tanımı, değişim sürecini optimize etmek için bu yöntemde en büyük soruna neden olan şeydir.

Birçok firmanın HTTPS'ye geçerken karşılaştığı zorluk, her sertifika için talepleri yerine getirmek için birçok sertifikanın bireysel IP adresleriyle SNI formatına uyarlanmasıydı. TLS'nin onlar için yaptığı şey, bu tür isteklere yanıt vermek için sertifikalar oluşturmayı kolaylaştırmaktı ve SNI'nin daha da ileri götürdüğü şey, tüm internet ağına tam bir tanımlama sistemi atarak, kişiselleştirilmiş özel sertifika IP adreslerine olan ihtiyacı ortadan kaldırmak oldu. Yüzyılın yükseltilmesiyle gelen şey, bilgisayar korsanlarının veri aktarımını izlemek ve gölgelemek ve daha sonraki bir aşamada şifresini çözmek için ihtiyaç duydukları bilgileri çıkarmak için yerleşik 'kişi adlarını' kullanmalarına izin vermesiydi.

TLS, verilerin şifrelenmiş bir kanalda ileri geri gönderilmesine izin vermesine rağmen, SNI doğru hedefe ulaşmasını sağlarken, ikincisi, bilgisayar korsanlarının çevrimiçi etkinliği izlemesi ve DNS isteklerini, IP adreslerini izleyerek kaynağıyla eşleştirmesi için araçlar da sağladı. ve veri akışları. DNS bilgilerinin TLS kanalından da geçirilmesiyle daha katı SNI kodlama politikaları uygulanmış olsa da, bilgisayar korsanlarının bunu çıkarmak istedikleri bilgiyi takip etmek ve izole etmek için bir tanımlama aracı olarak kullanabilmeleri için küçük bir pencere kalır. şifre çözme. Daha fazla TLS şifreli veri trafiğiyle uğraşan karmaşık sunucular, iletişimi sunucularında göndermek için düz metin SNI kullanır ve bu, bilgisayar korsanlarının takip etmek istedikleri kanalları ve bilgi akışlarını tanımlamalarını kolaylaştıran şeydir. Bir bilgisayar korsanı, ilgilenilen verinin SNI bilgilerini çıkarabildiğinde, sunucuyla ayrı bir TLS bağlantısında komutun sahte bir tekrarını kurabilir, çalınan SNI bilgilerini gönderebilir ve bu bilgileri geri alabilir. onunla ilişkilendirildi. Geçmişte bu SNI sorununu çözmek için birkaç girişimde bulunuldu, ancak çoğu, SNI'nin onu sunucular için uygun bir tanımlama yöntemi haline getirmek için üzerinde çalıştığı basitlik ilkesine karşı çıktı.

Bu yöntemi oluşturmak için ilk kez çalışan zirveye geri dönersek, dört teknoloji devinden katılımcılar, TLS SNI için bir şifreleme geliştirmek üzere Montreal'deki konferansa geri döndüler, çünkü çoklu HTTPS bitişik sistemdeki daha büyük verimliliğe rağmen, güvenlik hala bir endişe kaynağı olmaya devam ediyor. daha önce olduğu kadar.

SNI'yi TLS'de gizlemek için, bilgisayar korsanının görebileceği bir 'Ön Hizmet' gösterisi altında bir 'Gizli Hizmet' tutulmalıdır. Gizli hizmeti doğrudan gözlemleyemeden, bilgisayar korsanı, şifrelenmiş verileri aktarmak için kullanılan temel gizli hizmet parametrelerini tanımlayamadan, düz metinde gizlediği ön kılık değiştirerek yanlış yönlendirilecektir. Gözlemci, ön hizmetin izini takip ederken, hacker'ın izini kaybettiği noktada amaçlanan gizli hizmetine yönlendirilirken veriler gözlenen kanaldan kaldırılacaktır. Sunucu, ön hizmete de maruz kalacağından, veriler oraya girdikçe, verileri gizli hizmete yönlendirmek için ön hizmete ikinci bir paralel SNI sinyali gönderilecek ve bu yönde değişen süreçte bilgisayar korsanı olacaktır. sunucunun ağında kaybolmak. Bu çift bilet mekanizması, aynı SNI altında birleşik bir bilete daha da geliştirildi. Bir veri parçası sunucuya gönderildiğinde, veriler işbirliği yapan bir SNI yeniden yöneticisi üretir ve ikisi, TLS şifreli veriyi gitmesi gereken yere götürmek için birlikte çalışır. Her iki SNI yolunu da kapsayan rastgele ön hizmetini kırmadan, bilgisayar korsanı verilerin izini takip edemeyecek, ancak sunucu yine de ikisini birbirine bağlayabilecek ve verilerin nihai konumu olarak gizli hizmetin şifresini çözebilecektir. Bu, sunucuların veri aktarımlarını TLS şifrelemesinde optimize etmek için SNI kullanmaya devam etmelerine olanak tanırken, bilgisayar korsanlarının SNI mekanizmasından yararlanamamasını sağlar.