California ve Massachusetts’teki üniversitelerden akademik araştırmacılardan oluşan bir ekip, belirli koşullar altında pasif ağ saldırganlarının, başarısız SSH (güvenli kabuk) bağlantı girişimlerine yol açan doğal olarak oluşan hatalardan gizli RSA anahtarlarını almasının mümkün olduğunu gösterdi.
SSH, uzaktan sistem erişimi, dosya aktarımları ve sistem yönetimi görevlerinde yaygın olarak kullanılan, güvenli iletişim için bir şifreleme ağ protokolüdür.
RSA, SSH’de kullanıcı kimlik doğrulaması için kullanılan genel anahtarlı bir şifreleme sistemidir. Genel, paylaşılabilir bir anahtarla şifrelenen iletişimin şifresini çözmek için özel, gizli bir anahtar kullanır.
Donanım hatalarını ortaya çıkarma
Üniversite araştırmacıları Keegan Ryan, Kaiwen He, Nadia Heninger ve George Arnold Sullivan tarafından yayınlanan bir makale, pasif bir ağ saldırganının imza hesaplaması sırasında hatalarla karşılaşan SSH sunucularından özel bir RSA anahtarı elde etmesinin mümkün olduğunu gösteriyor.
Araştırmacılar teknik makalede “CRT-RSA kullanan bir imzalama uygulamasında imza hesaplaması sırasında bir hata oluşursa, bu imzayı gözlemleyen bir saldırgan, imzalayanın özel anahtarını hesaplayabilir” diyor.
Çin Kalan Teoremi (CRT), genel anahtarın bit boyutunu azaltmak ve şifre çözme süresini hızlandırmak için RSA algoritmasıyla birlikte kullanılır.
Araştırmacılar ayrıca şöyle açıklıyor: “Bu saldırılar, modulo bir asal faktör (örneğin q) hesaplanırken bir hata yapılırsa, ortaya çıkan geçersiz imza “s”nin doğru imza modulo bir asal faktör p’ye eşdeğer olduğu, ancak q’ya eşit olmadığı gerçeğinden yararlanıyor.” .
Bu tür hatalar nadir olmasına rağmen donanım kusurlarından dolayı kaçınılmazdır. Yeterince geniş bir veri havuzu göz önüne alındığında, bir saldırgan istismar için birçok fırsat bulabilir ve bunlardan yararlanabilir.
Bu, eski TLS sürümlerini etkileyen bilinen bir sorundur. Bağlantıyı kuran el sıkışmanın şifrelenmesiyle TLS 1.3’te bu sorun giderildi, böylece pasif dinleyicilerin imzaları okuması engellendi.
Daha önce SSH’nin bu saldırıya karşı güvenli olduğu varsayılmıştı ancak araştırmacılar, özel anahtarı kısmen bilinen olmayanlardan kurtaran kafes tabanlı saldırılar kullanarak RSA sırlarını almanın mümkün olduğunu kanıtladı.
Araştırmacılar, testlerinin “RSA-1024, SHA512 için” sonuçları içermediğini, çünkü karmadaki bilinmeyen bitlerin sayısının kaba kuvvetle veya kafeslerle çözebileceğimizin çok ötesinde olduğunu belirtiyorlar.
Ancak “kafes saldırısının oldukça etkili” olduğunu ve testlerinin %100 başarı oranına sahip olduğunu ekliyorlar.
Araştırmacılar, kafes saldırısını kullanarak, karşılık gelen RSA genel anahtarının çarpanlara ayrılmasını ortaya çıkaran 4.962 geçersiz imza bulmayı başardılar ve böylece 189 benzersiz RSA genel anahtarına karşılık gelen özel anahtarların alınmasına olanak sağladılar.
Alınan sırların çoğu, savunmasız uygulamalara sahip cihazlardan geldi; en fazla sayıda imza ise Zyxel cihazlarından geldi.
Araştırmacılar sorunu bu yılın başlarında Cisco ve Zyxel’e açıkladılar ve satıcılar da bunun nedenini araştırdılar.
Cisco, geçen yıl Cisco ASA ve FTD Software’de uygun bir hafifletici önlemin getirildiğini belirledi. Şirket araştırmacılara Cisco IOS ve IOS XE Yazılımındaki azaltımları araştırdığını söyledi.
Zyxel, araştırmacıların deneyde kullandığı ZLD aygıt yazılımı sürümünün OpenSSL kullanmaya geçtiğini ve bunun da riski ortadan kaldırdığını buldu.
Araştırmacılar, RSA ile Çin Kalan Teoremi (CRT) algoritmasını kullanan imzalama uygulamalarında imzayı hesaplarken bir hata olması durumunda, imzayı gözlemleyen bir saldırganın imzalayanın özel anahtarını bilgisayara aktarabileceği konusunda uyarıyor.
Saldırganın gizli anahtarı alma becerisini engellemek için araştırmacılar, imzaları göndermeden önce doğrulayan, imza oluşturmak için OpenSSL’ye dayanan OpenSSH paketi gibi uygulamaları öneriyor.