CA kök sertifikalarının tümü neden tüm SHA-1 imzalı (SHA-1'in kullanımdan kaldırıldığından)?


67

SSL sertifikalarının artık SHA-1 kullanılarak imzalanamayacağını biliyorum. Ancak, tüm CA kök sertifikaları SHA-1 imzalıdır (çoğunlukla). Bu, artık "size büyükannem SSL mağazası" için güvenilmeyen aynı algoritmanın, dünyanın en üst düzey güvenlikli sertifikası için iyi olduğu anlamına mı geliyor?

Bir şey mi eksik? (anahtar kullanımı? anahtar boyutu?)


9
"All" CA kök sertifikalarının SHA1 olduğu doğru değildir.
Greg Askew

5
Kök sertifikalar dünya görüşü varsayımlarına başlamak gibidir. Onlara güvenmek inancı alır.
Roy Tinker

@RoyTinker, cogito ergo toplamı dışında (radikal şüphe ve cevap: Kartezyen Şüphecilik )?
Nick,


6
@NickT: Güvenle oyna - cogito ergo cogito ;-)
tonysdg

Yanıtlar:


106

Kök CA sertifikalarının imzası önemli değil çünkü bunları doğrulamanız gerekmiyor. Hepsi kendinden imzalı.

Bir kök CA sertifikasına güveniyorsanız, imzasını doğrulamanıza gerek yoktur. Güvenmiyorsanız imzası sizin için değerlidir.

Düzenleme: Aşağıda çok alakalı bazı yorumlar var. Onları kopyalamak ya da yeniden düzenlemek ve yazarları yerine onlar için kredi almak konusunda kendimi rahat hissetmiyorum. Ancak insanlara bu cevaba açıklama eklemelerini rica ediyorum.


3
Niçin imzalandıkları sorusunu getiriyor
Richard Tingle

42
Çünkü sistem imzalanmamış sertifikaları desteklemiyor.
OrangeDog

Bana öyle geliyor ki, kırılabilir bir kök sertifikasına sahip olan endişe “kök sertifikasını nereden aldığınızı bilmiyorsunuz” değil, “daha ​​doğrusu” bu sertifikayı kimin kırabildiğini ve kullanabileceğini bilmiyorsunuz. ne isterlerse imzalamak. " Ve cevabınızdan anlaşılan, ikisinin (cert ve sertifika imzası) ayrı endişeler olduğunu ve certin kendisinin uygun şekilde güvenli ve parçalanamadığını mı görünüyor?
Dewi Morgan,

20
"Onları doğrulamana gerek yok" dan daha da ileri giderdim. Bir sertifika zincirindeki imzanın amacı, daha yüksek bir otoritenin daha düşük bir otoriteye sertifika vermesidir. Bir kök CA için, tanım gereği daha yüksek bir otorite yoktur ("kök" anlamına gelir), bu nedenle sertifikayı imzalayabilecek hiç kimse yoktur . Bahsedildiği gibi sertifikaların imzalanması gerektiğinden , kök CA'lar "sahte" bir imza ile imzalanır ve bunu yapmanın en basit yolu kendi kendine imzalamaktır. Bu yüzden, sadece doğrulamak zorunda değil, aynı zamanda bir kök CA imzasını doğrulama fikri de duyarlı değildir.
Jörg W Mittag

13
@DewiMorgan Bir karmaşaya sahip bir kök sertifikasını "kıramazsınız", çünkü müşteri , (kendi) imzasına değil , sertifikanın kendisine güvenir . RSA'ya bir saldırı olan özel anahtarı karma algoritmaya değil, kurtarmanız gerekir.
zwol

46

Günün sonunda bir kök sertifika kendinden imzalı. Asla başka bir varlık tarafından imzalanmadı. Kök sertifika, güvenilen yayıncıların tarayıcı listesine gönderilmesi veya varsayılan Windows güvenilir yayıncı listesine eklenmek üzere Microsoft tarafından kabul edilmesini sağlamak gibi bant dışı işlemler yoluyla güven alır.

Bu sertifikalar (ve kendilerini imzalayan şirketler) (iddiaya göre, umarım) imzalarından başka yollarla iyice incelenir.


2
Bir kök sertifikanın güncellenmesi, bu bant dışı işlemden tekrar geçilmesi gerektiğini de belirtmez.
Kaithar

4
"İddia edilen, umarım" için +1
Nathan Osman

6

Bunun önemli olduğu tek şey, kök SHA-1 tarafından imzalanmışsa, SHA-1 tarafından iptal edilebilir. Yani, SHA-1'e saldırabilecek biri kök için bir iptal yapabilir. Ve kesinlikle tarayıcının nasıl devam edeceğini bilmediğinden eminim, bu yüzden vandal SSL bağlantılarını bırakmaktan daha fazlasını başaramadı. Ne kadar ezik.


1
Bu ilginç bir düşünce ama bunun bu şekilde işe yarayacağından şüpheliyim. Tahminime göre, her bir ajanın kendine özgü bir davranışı olacaktı, ancak herhangi bir geliştiricinin kök listesinin iptal edilmesinde kök sertifikalarının iptalini yönetmek için kullanılacağı fikrine sahip olduğundan şüpheliyim. En azından, eğer bu bazı durumlarda işe yaradıysa, kasten geliştiriciler tarafından değil, yazılımın iptal edilmesinden kaynaklanıyor olabilirdi.
Peter Oehlert

1

Buna bir not olarak, SOME CA'ları zaten kök ve ara sertifikalarını zaten SHA256'ya güncelliyorlar.

GlobalSign'ın geçtiğimiz yıl kod imzalama sertifikalarımızı güncellerken sertifikalarını güncellediğini biliyorum, bu yüzden yeni zincirlerini de bunlara eklemek zorunda kaldım.

Hangi belirli sertifikaların güncellendiğini ve hangilerinin güncellendiğini kontrol edebilir, ancak burada eski bir SHA1 sertifikası bırakmış olabilirsiniz => 1

Umarım yardımcı olur.


0

Kök CA için, kendi imzası ne olursa olsun, CRT'de bağlı CA'nın ortak anahtarına güvenirsiniz.

Ham bir genel anahtar yerine .CRT dosya biçimini kullanarak CA'yı açıklama .PEM, içinde daha fazla ayrıntı toplanmasına olanak tanır - örneğin, CA adı - (yine, imzaya değmez)


-1

Orada dönemi çoğunlukla 2006 veya daha önceki, çok eski zaten sabitlenmiş Güvendiğim SHA1 kök tarayıcılar kabul sertifikaları, ancak herhangi yeni sertifikalar. Firefox ve Chrome'un tek basamak kullanarak ne zaman sürümlendirildiğini hatırlayın.

Kök CA, 2014'ten sonra ayarlanmamış olan SHA1 sertifikalarını kullanıyorsa sertifikalar başarısız olur. Gerçek tarih kısıtlamaları tarayıcıya veya diğer uygulamalara bağlıdır. WebCA cabforum bunu birkaç yıl önce açıkça belirtti. Bunu kendiniz test edin:

  1. Bir SHA1 ile imzalanmış özel bir kök Sertifika Yetkilisi altyapısı oluşturun, rootSHA1 olarak adlandırın
  2. RootSHA1'in köke zincirlenmiş bir sertifikayla sertifika veren "veren" bir CA veya "ara" CA oluşturmasını sağlayın. Ara SHHA256 deyin.
  3. SHA256 veren CA'nın bir sha256 veya daha büyük karma ile imzalanmış bir sertifika oluşturmasını sağlayın. Bunu web sunucusuSHA256 olarak adlandırın.
  4. WebServerSHA256'yı webServerSHA56.mydomain.com sitesine yükleyin.
  5. RootSHA1'i, ortaSHA256'yı ve webServerSHA256 sertifikalarını Google Chrome'daki uygun konumlara yükleyin. Kök Güvenilir Kök Sertifika Yetkilileri ve diğerlerine bir sertifika zinciri ile yükleyin.
  6. Google Chrome'a https://webServerSHA256.mydomain.com/ adresine gidin ve webServerSHA256 için yeşil bir asma kilit olmadığını doğrulayın. Test başarısız.

Bu oldukça yanlış. Orta düzey cerlar (ve EE. / yapraklı cerler) SHA2 gerektirir, ancak kökler gerektirmez. Google’ın kendi cer zincirleri, özel CA'ları (Google Internet Authority G3) üzerinden GlobalSign Root CA R2'ye - ki bunlar SHA1 - ve (sürpriz değil) Chrome tarafından kabul edildi.
dave_thompson_085

Evet bu sabitlenmiş SHA1 sertifikaları kabul edilir, ancak kendi Trusted Root sertifika deposuna eklemenize rağmen yeni SHA1 kök sertifikaları kabul edilmez. Cevabımı test davası eklendi.
rjt
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.