Spring Framework'te bir güvenlik açığı keşfettiler

Son zamanlarda haberler bunu kırdı sıfır gün türünde kritik bir güvenlik açığı tespit edildi modülde Spring Core, Spring Framework'ün bir parçası olarak gönderiliruzak, kimliği doğrulanmamış bir saldırganın kodlarını sunucuda yürütmesine izin verir.

Bazı tahminlere göre, Spring Core modülü Java uygulamalarının %74'ünde kullanılır. Güvenlik açığı tehlikesi, yalnızca için "@RequestMapping" ek açıklamasını kullanınİstek işleyicilerini bağlayarak ve JSON/XML yerine "name=value" (POJO, Plain Old Java Object) biçiminde web formu parametre bağlamasını kullanarak, saldırılara açık hale gelirler. Bu sorundan hangi Java uygulamalarının ve çerçevelerinin etkilendiği henüz belli değil.

"Spring4Shell" adlı bu güvenlik açığı, tam bir RCE'ye yol açan sınıf enjeksiyonundan yararlanır ve çok ciddidir. "Spring4Shell" adı, Spring Core, kötü şöhretli Log4Shell güvenlik açığını ortaya çıkaran log4j'ye benzer, her yerde bulunan bir kitaplık olduğu için seçildi.

JDK sürüm 9 ve sonraki sürümleri çalıştıran kullanıcıların bir RCE saldırısına karşı savunmasız olduğuna inanıyoruz. Spring Core'un tüm sürümleri etkilenir.

Saldırıyı hafifletmek için stratejiler var ve aşağıda tartışılan diğer faktörlere bağlı olarak tüm Spring sunucularının mutlaka savunmasız olmadığına inanıyoruz. Bununla birlikte, şu anda Spring Core kullanıyorlarsa tüm kullanıcıların azaltma uygulamalarını veya yükseltmelerini öneriyoruz.

Güvenlik açığından yararlanılması yalnızca Java/JDK 9 kullanıldığında mümkündür veya daha yeni bir sürüm. Güvenlik açığı, "class", "module" ve "classLoader" alanlarının kara listeye alınmasını veya izin verilen alanların açık bir beyaz listesinin kullanılmasını engeller.

sorun CVE-2010-1622 güvenlik açığına karşı korumayı atlama yeteneğinden kaynaklanmaktadır, 2010'daki Spring Framework'te düzeltildi ve istek parametreleri ayrıştırılırken classLoader işleyicisinin yürütülmesiyle ilişkilendirildi.

İstismarın çalışması, bir istek göndermeye indirgenir c"class.module.classLoader.resources.context.parent.pipeline.first.*" parametreleriyle, bunların işlenmesi "WebappClassLoaderBase" kullanılırken AccessLogValve sınıfına bir çağrıya yol açar.

Belirtilen sınıf, kaydediciyi Apache Tomcat'in kök ortamında rastgele bir jsp dosyası oluşturacak ve saldırgan tarafından belirtilen kodu bu dosyaya yazacak şekilde yapılandırmanıza olanak tanır. Oluşturulan dosya doğrudan istekler için kullanılabilir ve bir web kabuğu olarak kullanılabilir. Apache Tomcat ortamında savunmasız bir uygulamaya saldırmak için curl yardımcı programını kullanarak belirli parametrelerle istek göndermeniz yeterlidir.

Spring Core'da ele alınan sorun yeni tanımlanan güvenlik açıklarıyla karıştırılmamalıdır CVE-2022-22963 ve CVE-2022-22950. İlk sorun, Spring Cloud paketini etkiler ve ayrıca uzaktan kod yürütmenin (istismar) gerçekleştirilmesine izin verir. CVE-2022-22963, Spring Cloud 3.1.7 ve 3.2.3 sürümlerinde düzeltildi.

İkinci sayı CVE-2022-22950, ​​Spring Expression'da mevcuttur, DoS saldırılarını başlatmak için kullanılabilir ve Spring Framework 5.3.17'de düzeltilmiştir. Bunlar temelde farklı güvenlik açıklarıdır. Spring Framework geliştiricileri, yeni güvenlik açığı hakkında henüz bir açıklama yapmadı ve bir düzeltme yayınlamadı.

Geçici bir koruma önlemi olarak, kodunuzda geçersiz sorgu parametrelerinin kara listesini kullanmanız önerilir.

Todavía sonuçların ne kadar felaket olabileceği açık değil tanımlanan sorun ve saldırıların Log4j 2'deki güvenlik açığı durumunda olduğu kadar büyük olup olmayacağı güvenlik açığını gidermek için.

31 Mart 2022 tarihinden itibaren en son yayınlanan 5.3.18 ve 5.2.20 Spring sürümlerinde bir yama mevcuttur. Tüm kullanıcıların yükseltme yapmalarını öneririz. Yükseltme yapamayanlar için aşağıdaki azaltıcı önlemler mümkündür:

Praetorian'ın Spring Core'da bir RCE'nin varlığını doğrulayan gönderisine dayanarak, şu anda önerilen yaklaşım, istismar için gereken savunmasız alan modellerinin bir kara listesini ekleyerek DataBinder'a yama yapmaktır.

Sonunda evet onun hakkında daha fazla bilgi edinmekle ilgileniyorsunuz not hakkında ayrıntıları kontrol edebilirsiniz Aşağıdaki bağlantıda.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.