Kendinden İmzalı SSL Sertifikası Yanlış Güvenlik Duygusu mu?


30

Kendinden İmzalı SSL sertifikası sahte bir güvenlik duygusu mu?

Gizlice dinleniyorsanız, kullanıcı her zaman yaptığı gibi sertifikayı kabul edecektir.

Yanıtlar:


25

İlginç bir soru, bence kullanımına bağlıdır. Oturum bakımından şifreli olarak korunuyorsunuz, ancak CA kök sertifikanızı kullanıcılara / istemcilere dağıtmadığınız sürece size sunulan doğru SSL sertifikası olup olmadığını söylemenin bir yolu yok. Dahili testler / dev projeler için bu harika olacaktır, kullanıcılarınıza dağıtmayı kullandığınız bir kök CA sertifikası oluşturursunuz (Windows'ta Grup İlkesi ve Linux / BSD'deki openssl komut satırı aracılığıyla yapılabilir) ve sonra bu kök sertifikasını kullanın CSR'lerinizi imzalamak. Kullanıcılar bir uyarı veya başka bir şey görmez ve sertifikanın dahili CA'nız tarafından imzalandığını bilirsiniz.

Bunu garanti edemediğiniz harici siteler için, kendinize imzalı bir sertifikanın, bağlantı üzerinden şifre veya diğer hassas bilgileri gönderiyorsanız, SSL olmamasından daha iyi olduğunu söyleyebilirim.

Ancak, artı tarafta GoDaddy bunlardan biri olan çok ucuz "ticari" sertifika verenlerin bol miktarda var . Yılda yaklaşık 40 Euro'luk bir sertifika alabilirsiniz. GoDaddy, OpenSource projesi web sitelerine ücretsiz sertifikalar bile sunar.


Bu tam olarak yaptığımız şey. Ucuz sertifikalar olsa da dikkatli olun. Bazıları oldukça garip kök CA'lara sahiptir ve bunların tümü, tüm tarayıcılarla birlikte gönderilen kök CA sertifikalarının koleksiyonunda değildir.
wolfgangsz

4
Hariç 1 "kendinden imzalı sertifika hiçbir SSL daha iyidir hepsi" - IFF bir MiTM tarafından sağlanan bir sertifika, ve değil doğrulayıp. Açıkçası, normal bir kullanıcı en son ne zaman yaptı? (Cevabın mavi ay ve uçan domuzları içereceğinden şüpheliyim) Başka bir deyişle, CA sertifikalarını kullanıcılara dağıtmadan kendinden imzalı bir SSL sertifikası kullanarak, kullanıcıları aldıkları korkunç alarma duyarsızlaştırıyorsunuz - öğrenecekler Bunu tıklamak için, "peki, mysite.example.com üzerindeki uyarıyı görmezden gelmemi söylediler, böylece her yerde görmezden gelebilirim; bak, bir kilit simgesi!" Voila, yanlış güvenlik duygusu!
Piskvor

7
@Piskvor, aslında bu tarayıcıların hatası. İlk olarak, tarayıcılar genellikle önceden bilinmeyen kendinden imzalı sertifikaları "kalıcı olarak kabul etmenin" bir yolunu sunmaz, böylece kullanıcı her oturum açışında kendisini tehlikeye atmaz. İkincisi, tarayıcılar eski düz HTTP'nin kullanımını engellemiyor, aynı zamanda yanlış bir güvenlik hissi yaratıyor. Bu yüzden HTTP, hem güvenlik hem de kullanıcı bilincinde olmak üzere HTTPS'den her zaman daha kötüdür (en azından uyarı alırlar!).
Rotsor

1
@Rotsor: Öncelikle, Opera dahili olarak tanımladığınız bu özelliğe sahiptir, FF Sertifika Devriyesi'ne sahiptir (en azından sertifika değişikliği konusunda uyarır). Ayrıca, SSL üzerindeki her şeyin bir tarayıcı olmadığını (IMAPS vb.) Unutmayın. İkincisi, mevcut HTTP bolluğu sadece tarayıcıların suçunu nasıl giderir? (ve hayır, yalnızca HTTPS tarayıcıları asla yakalanmadı, çünkü tam olarak bunlara göz atacak kadar küçük bir Net vardı). Üçüncüsü, " kullanıcılar uyardı", yalnızca kullanıcılar okuyabilseler faydalı olurdu - ve kör etmek için "kabul et" seçeneğini tıklamayın. "Kabul etmek, tıklamak anlama anlamına gelir" geliştiricilerin ortak yanılsamasıdır.
Piskvor

1
@Piskvor, bazı tarayıcıların bu özelliği sağladığını bilmek güzel. HTTP’ye gelince, yapılması gerekenleri söyleyemem (HTTP’ye izin vermemek bir seçenek değildir), ancak kendinden imzalı SSL’de SSL’ye göre güvenlikten daha fazla güvenlik uyarısı almak kesinlikle yanlış arıza!
Rotsor

12

Bir kez dar teknik gerekçelerle ve bir kez genel gerekçelerle aynı fikirde olmayacağım.

Dar teknik dayanak, OP'nin kendinden imzalı sertifikaları sormasıdır ve diğer bazı cevaplar özel CA'ların imzaladığı ve biraz farklı bir konu olan sertifikaları ifade eder. Ama çok farklı değil, bu gerçekten geçerken sadece bir not.

En büyük itiraz, ticari olarak imzalı sertifikaların önemsiz masraftan daha fazla olduğu ve yılda 40 doların bu gezegendeki pek çok insan için önemsiz bir masraf olmadığı düşüncesidir - kendinden imzalı sertifikaların oynayacakları önemli bir rolü vardır. İnternet güvenliğinde, sınırlamaları tanınması şartıyla .

Kendinden imzalı bir sertifika dosyamdaki bir ssh anahtarı gibidir known_hosts. Bağımsız doğrulama olmadan, inandığım sistemle konuştuğumu garanti edemez; ama şu anda konuştuğum sistemin, onunla konuşacağımı düşündüğüm en son konuştuğum sistem olduğunu garanti edebilir . Her zaman ssh anahtarlarını önbelleğe alıyoruz ve henüz genel anahtarlarının bir kısmından daha fazlasını bağımsız olarak doğrulayan bir sistem yöneticisi ile tanışmadım known_hosts.

Kendinden imzalı sertifikalar (ve bu nedenle, genel olarak geçerli olmayan CA'lar tarafından imzalanan sertifikalar), insanlar, iletişimi yalnızca kendilerine, DNS kaydının diğer ucunda ve şu anda çevrimiçi olan ortadaki erkekler. Sertifikayı bağımsız olarak doğrularlarsa, kimlik doğrulama ve şifreleme en azından tanınan bir CA tarafından imzalanan bir sertifika tarafından sağlananlar kadar güçlüdür.

Dahası, bu tek ve sadece internet güvenliği deva olarak tanınan CA tarafından imzalanan sertifikaları kullanımını sunmak isteyen gibi konularda sert düşünmek gerekebilir standart Mozilla pakette Çin Hükümeti'nin imza CA dahil ve Comodo tarafından imzalanan sahte SSL sertifikaları .


Ne yazık ki, "güvenilir CA" modeli gerçekten de bozuldu (ve yıllardır); maalesef uzağa gitmiyor (ve yerini alacak daha iyi bir şey yok). Her zaman olduğu gibi, SSL ve güvenilen CA'lar sihirli bir güvenlik perisi tozu değildir; Kullanıcının güvenliği aktif bir şekilde sürdürmesi gerekir - bu da çoğunlukla çılgınca bir varsayımdır.
Piskvor

2
Kullanıcılarınız, mevcut DNS sunucusuna (önbellek zehirlenmesi olasılığı dahil) ve isabet ettikleri cihaza olan yollarının bütünlüğünde güven düzeylerini eğitimli bir şekilde değerlendirme yeteneğine sahip mi? Mine, DNS'in ne olduğunu bilmiyor, başka bir durumda bir sunucuya bağlanmalarıyla ilgili eğitimli güvenlik kararları verebiliyor, kullanıcıya bir müşteri VPN'i ile bağlı olan MPLS aracılığıyla başka bir siteye bağlı. şifrelenmemiş kahve dükkanı wifi üzerinden. Onlara bu sorumluluğu vermekten kaçının.
Shane Madden

2
@Shane Madden: Bunun mümkün olduğu bir alan, yönetim ağı ön uçlarıdır - örneğin phpMyAdmin (ya da daha az derecede HTTPS'ye göre SVN). Genellikle sınırlı sayıda kullanıcı vardır ve bir ipucunun önemli bir kısmını içerirler . Büyükbabamdan bir SSL sertifikası uyarısı hakkında yazı yazmasını beklemem ama, özellikle de kontrol altında olan bir sunucuysa, kesinlikle bir sysadmin olmasını bekliyorum. Bir bahçe çeşidi kullanıcısı, known_hosts@MadHatter ile ilgili de hiçbir fikre sahip değildir .
Piskvor

8

Kullanıcıların CA sertifikanıza sahip olmadığı (en yaygın durum olan) harici siteler için, evet, kendinden imzalı bir sertifika yanlış bir güvenlik hissi verir ve bu nedenle işe yaramazdan daha kötüdür:

  • İlk olarak, önceden yüklenmiş bir CA sertifikası olmadan, kullanıcı sertifikanın gerçekten bir saldırgandan değil, sizden geldiğini nasıl doğrular? Elbette sertifika alanlarını (CN, parmak izleri, vb.) Eşleştirerek - ama neye karşı? Bu yüzden şimdi sertifikayı doğrulamak için bir yan kanala ihtiyacınız var - ve birkaç kez gördüğümde, destek hattı operatörlerinin (doğrulama için yan kanal olarak hizmet etmesi gereken) ne anlama geldiğine dair hiçbir ipucu yok ; ayrıca, böyle bir yan kanalın işletilmesi, CA onaylı bir sertifikanın alınmasından çok daha büyük siparişlerdir, bu nedenle kullanıcının size tamamen güvenmesi gerekir.

  • İkincisi, kullanıcının aldığı korkutucu uyarı iyi bir sebepten dolayı korkutucu: kullanıcı sunulan sertifikayı doğrulayamadığından / onaylayamadığından, verileri güvenli bir şekilde Elbonian Haxx0r D00dz'ye gönderiyor olabilir.

  • Üçüncü olarak, tümü ve kötü, kullanıcıları hassasiyet giderici vardır : "İyi, benim para o uyarıyı göz ardı gerektiğini söyledi https://mysite.example.com/ ve bir örs vermedi Başımda bırakın ve benim akvaryum balığı da ölmedi; sooooo, bu aslında herhangi bir anlamı olmayan başka bir uyarı kutusu olduğu anlamına gelir, bu yüzden ne zaman karşılaştığım zaman bu kutuyu görmezden gelebilirim - bu güzel kilit simgesini yine de önemli buluyorum. "

Başka bir deyişle, koruma seviyesi düz HTTP ile karşılaştırılabilir (kablo üstü koklama hariç: veriler transit olarak şifrelenmiş olsa da, uç nokta doğrulaması olmadan oldukça anemik bir özelliktir), ancak koruma duygusu makul olmayan bir şekilde yüksek . Kötü araba benzetmesi: "ABS'im var, bu yüzden şimdi kötü koşullarda daha emniyetli bir sürüş yapabilirim" - sadece ABS otomobilin satış broşüründe mevcut, ancak arabada bulunmadan var.

Önerilen okuma: OWASP SSL En iyi yöntemler

TL; DR: Halka açık sitelerde kendinden imzalı sertifikaları kullanarak, Net'i her seferinde bir ipucu olmayan kullanıcı olarak daha kötü bir yer haline getiriyorsunuz.


2
@ downvoter: Cevabımın nerede yanlış olduğunu ("rahatsız edici, uygunsuz ve yerine getirme zahmeti " yerine "yanlış" olarak) belirtmişseniz sevinirim . Güvenlik Zor ve "la la la seni duyamıyorum" düzeltmek için hiçbir şey yapmaz.
Piskvor

2
Cevabınızı reddetmemiş olmama rağmen, aşağı oktaki araç ipucu metni, yanıtın kullanışlı olmadığından başka bir neden olmadan aşağı oy kullandığını gösterir. Sahte güvenlik sarkaçının diğer yönde de sallanabileceğini düşünüyorum. Yakın zamanda gerçekleşen comodo RA ihlalleri, bir "kötü niyetli" kişinin de mükemmel bir meşru sertifika almasının o kadar da zor olmadığını kanıtladı.
mahnsc

@mahnsc: Hatırlatma için teşekkürler; Bunun farkındayım :-) "Kendinden İmzalı bir SSL sertifikası yanlış bir güvenlik duygusu mu?" “Evet, aşağıdaki nedenlerden dolayı…” kulağa faydalı geliyor, değil mi? Bu yüzden neden böyle bir şey olmayacağını merak ediyordum: Muhalif bir bakış açısıyla bir şey öğrenebilirdim; Aşağıdan bir oyla, çok değil.
Piskvor

1
@mahnsc: Tehlikeli CA'lar hakkında iyi bir nokta. Kök CA listesinin taş ve kırılmaz olduğunu söylemiyorum - mükemmel güvenlik yok; ama kırmak için çok daha çaba gerektirir o bir ağ geçidi üzerinde yakalayan SSL proxy ayarı daha.
Piskvor

1
@mahnsc: Bir SSL vekil kurmak ve kullanıcının uyarıları tıklatmasını ümit etmek, bir SSL vekil kurmak ve bir sahte sertifika isteğinin CA doğrulama işleminde kaymasını ummaktan daha kolay olduğunu kastediyordum. Her ikisi de, gördüğümüz gibi mümkündür, ancak eskisinin yapması çok daha kolaydır (ve tarayıcı kullanıcılarının genellikle denetim izlerini tutmaması nedeniyle daha sonra algılaması daha zordur).
Piskvor

8

Bağlı. Sizi daha güvenli hale getirdiğini düşünüyorsanız, yanlış güvenlik duygunuzla daha riskli şeyler yapmayı seçtiğiniz için riskinizi arttırır. İşlevsel olarak HTTP'ye eşdeğer davranırsanız, biraz daha güvende olduğunuzu söyleyebilirim.

SSL / HTTPS olmadan, ağınızda (veya giriş yapan herhangi birisinin yerel ağında) kablolu bağlantıya sahip olan herkes, düz metin olarak gönderilen kullanıcı adlarını / şifrelerini önemsiz bir şekilde dinleyebilir ve yakalayabilir.

Kendinden imzalı SSL ile kolayca dinleyemezler, ancak şimdi sitenizi taklit etmeleri gerekir; bunun yerine DNS'yi ortadaki (MITM) saldırısı yapan bir adam olarak değiştirmesi gerekir. Bu hala bir tehdittir, ancak başarmaları çok daha zor.

Kendinden imzalı SSL kullanmanın bir başka sorunu da, birçok tarayıcının kendinden imzalı sertifikaları büyük bir güvenlik tehdidi olarak görmesi ve dev bir kırmızı sayfa ile girmeden (örneğin, krom) sizi uyarmasıdır. http://www.sslshopper.com/article-ssl-certificates-in-google-chrome.html Bu büyük bir rahatsızlık olabilir.

Sonuç olarak, eğer özellikle güvenli olması gerekmeyen bir şeyi yönetiyorsanız (örneğin, kredi kartı verisi yoksa, sosyal güvenlik numarası yoksa) ve uygun bir sertifika alamazsanız, kendinden imzalı bir sertifika bir anlam ifade edebilir (diğer ağ kullanıcılarının giriş bilgilerini kolayca koklamalarını engellemek için söylenebilir).


0

"Güvenlik" ile ne demek istediğinizi ve bunun kapsamı ne kadar olduğuna bağlı.

Örneğin, tarayıcınız varsayılan olarak kabul edilen bir CA kümesiyle birlikte gelir. Bu, bu CA tarafından verilen herhangi bir sertifikanın tarayıcınız tarafından kabul edildiği anlamına gelir (dns adıyla eşleşene kadar). Şimdi, kötü bir hükümetin bir CA’ya sahip olduğunu veya CA’yı ziyaret ettiğiniz site için bir sertifika vermeye zorlayabileceğini hayal edin. Ardından, bir MITM yapmak çok kolaydır: tarayıcınıza sahip oldukları sertifikayı göndererek bağlantınızı proxy olarak kullanabilirler ve tarayıcınız "güvenilir" bir CA'dan geldiği için kabul eder. DNS-şeffaf olana kadar (MITM için temel olan) bu sorun değil.

Bu nedenle, "kabul edilen CA listesi" temel olarak, bu CA'lardan biri bazı kötü hükümetler ile işbirliği yapana kadar büyük bir güvenlik açığıdır. Kendi CA'nızın olması çok daha iyi.

Elbette, şirketinizde veya ev sunucunuzda yapabilirsiniz, çünkü kendi CA sertifikanızı da kontrol ettiğiniz istemciye yükleyebilirsiniz. Genel bir sunucuda, bir istisna eklemesini veya sertifikanızı eklemesini isteyen herhangi bir kullanıcıyla ilgilenemezsiniz.

Yani, "güvenlik" için ne demek istediğinizi ve kapsamını bağlıdır. Eğer istemcilere sahipseniz, kendiliğinden imzalananlar, istemciye kendi CA sertifikanızı yükleyene kadar daha güvenlidir.

Tabii ki, tüm müşterilere sahip olmadığınız için halka açık bir web sitesinde yapamazsınız. Böylece güvenli olmayan farklı davranışlardan oluşan bir tehlikeye sahip olacaksınız.

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.