Django Uygulama Güvenlik Açıkları Uzaktan Kod Yürütülmesine İzin Ver


Güvenlik araştırmacıları, Django’da saldırganların etkilenen sistemlerde keyfi kod yürütmesine izin verebilecek ciddi güvenlik açıklarını ortaya çıkardılar.

Dizin geçişinden kütük enjeksiyonuna kadar bu kusurlar, Python’un en popüler web çerçevelerinden birinde kritik güvenlik risklerini vurgulamaktadır.

Son Güvenlik Tavsiyeleri

Django’nun güvenlik ekibi 2025’te birden fazla güvenlik açıkına değindi:

  • CVE-2025-48432 (Haziran 2025): Saldırganların kütükleri bozmalarını veya kötü niyetli etkinlikleri maskelemelerini sağlayarak, çıkışsız istek yolları aracılığıyla günlük enjeksiyonuna izin verir. Django 5.2.3, 5.1.11 ve 4.2.23’te yamalı.
  • Hizmet reddi güvenlik açıkları:
    • Strip_tags () DOS (Mayıs 2025)
    • Kimlik Doğrulama Görünümlerinde Windows’a özgü DOS (Nisan 2025)
    • IPv6 doğrulaması (Ocak 2025)

Sustam Zinciri: RCE’ye Dizin Geçişi

Bir araştırmacı yakın zamanda zincirleme güvenlik açıklarının uzaktan kod yürütülmesini nasıl sağladığını gösterdi:

  1. Yolun geçişi: Kullanıcı adı alanının manipüle edilmesi, dosya yazma keyfi konumlara izin verdi (örneğin ../../../../../../APP/Backend/backend/).
  2. CSV yük enjeksiyonu: CSV yorumlarına gömülü kötü niyetli python kodu hayatta kalan pandalar işleme:
# VALID CSV DATA

import os,requests;...application = get_wsgi_application();,,,,,

Python’un tercümanı, yükün korunması ve CSV serileştirilmesi sırasında eklenen virgülleri göz ardı etti.

3. WSGI kaçırma: Django dosyayı yeniden yüklediğinde WSGI.PY’nin tetiklenen kod yürütülmesini üzerine yazarak şu komutları etkinleştirerek şu komutları etkinleştirerek:

whoami && id && hostname

Azaltma stratejileri

  1. Anında yama: Django 5.2.3+ ‘a yükseltin veya CVE-2025-48432 için güvenlik yamaları uygulayın.
  2. Giriş Sterizizasyonu:
def sanitize_filename(filename):
    filename = os.path.basename(filename)
    return os.path.normpath(filename)
  1. Dosya Doğrulama:
class SafeFileValidator:
    def __call__(self, value):
        if '../' in value:
            raise ValidationError('Invalid file name')

Django Projesi, bu güvenlik açığını ele almak için 5.2.3, 5.1.11 ve 4.2.23 sürümlerinde yamalar yayınladı.

Etkilenen sürümleri çalıştıran tüm kullanıcıların mümkün olan en kısa sürede yükseltmeleri şiddetle tavsiye edilir.

Geçici bir önlem olarak, kuruluşlar manuel log sanitizasyonu veya günlük girişleri için ek validasyon uygulayabilir, ancak resmi yamayı uygulamak en etkili çözüm olmaya devam etmektedir.

Bu güvenlik açıkları, Django dağıtımlarında titiz giriş validasyonu ve hızlı yama için kritik ihtiyacın altını çizmektedir. Yöneticiler, dosya işleyen mantık ve kimlik doğrulama mekanizmalarının gözden geçirilmesine öncelik vermelidir.

Bu haberi ilginç bul! Anında güncellemeler almak için bizi Google News, LinkedIn ve X’te takip edin



Source link