İçeriğe atla
Noroxi
NVD / CVE Programı· CNA mitre

CVE-2021-31542: In Django 2.2 before 2.2.21, 3.1 before 3.1.9, and 3.2 before 3.2.1, MultiPartParser, UploadedFile, and FieldFile allowed directory traversa

Noroxi değerlendirmesi

Öncelik: İzleyin (aksiyon skoru 32/100)

  • İzlediğimiz kaynaklarda (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) herkese açık istismar kodu ya da sahada sömürü kaydı yok.
  • Önümüzdeki 30 günde sömürülme olasılığı %5,3 (FIRST EPSS); kayıtların %92,6 kadarından yüksek.
  • İnternetten erişebilen herkes tetikleyebilir. Hesap ya da parola gerekmez. Kullanıcının bir şey yapması gerekmez. Özel bir koşul gerekmez; tekrarlanabilir.
  • Düzeltilmiş sürüm: python-django (Debian:10) 1:1.11.29-1+deb10u11; python-django (Debian:12) 2:2.2.21-1; python-django (Debian:9) 1:1.10.7-2+deb9u13.
  • Ulusal siber güvenlik bildirimlerinde (siberguvenlik.gov.tr) 1 kez anıldı.

Şimdilik düşük öncelik. python-django (Debian:10) 1:1.11.29-1+deb10u11; python-django (Debian:12) 2:2.2.21-1; python-django (Debian:9) 1:1.10.7-2+deb9u13 ya da daha yeni sürüme yükseltin.

Kaydın verisinden otomatik üretilir: CVSS (NVD ve CNA), CISA KEV ve SSVC, FIRST EPSS, istismar kaynakları, düzeltme sürümleri. Nasıl hesaplıyoruz

Birincil kaynaklar: NVD · CVE.org · FIRST EPSS

In Django 2.2 before 2.2.21, 3.1 before 3.1.9, and 3.2 before 3.2.1, MultiPartParser, UploadedFile, and FieldFile allowed directory traversal via uploaded files with suitably crafted file names.

YüksekCVSS 7.5 · v3.1—İstismar yok Düzeltme var
Güncelleme
16 Haz 2026
EPSS
%5,3 · 92. yüzdelik

Rapor araçları

JSON

Aksiyon skoru

32

İzleyin

Şimdilik düşük öncelik.

CVSS
30 / 40 · 7.5 / 10
CISA KEV
0 / 30 · Listede değil
EPSS
2 / 30 · %5,3

Bu kayıt değişirse haber alın

  • KEV'de değil: sahada sömürü kaydı yok
  • Herkese açık istismar kodu kaydı yok
  • Düzeltme yayımlandı

Bunlardan biri değişirse günlük e-posta özetinde haber veririz.

CVE-2021-31542 kaydını takip edin

Ne zaman haber verilir

  • CISA KEV'e girdiğinde
  • istismar kodu ortaya çıktığında ya da silahlaştırıldığında
  • kayıt güncellendiğinde (düzeltme sürümü dahil)
  • EPSS bir haftada 20 puan arttığında

Günde bir e-posta özeti (06:00 UTC); webhook bağlarsanız KEV ve silahlaştırılmış istismar anında.

Ücretsiz hesapla ayrıca

WordPress siteniz mi var? WP Lens ile ücretsiz tarayın

  • Stack uyarıları: kullandığınız ürün ve sürümleri ekleyin, onları etkileyen yeni CVE'ler size gelsin
  • Site izleme: 1 site, kesintide anında e-posta
  • Alan adınızı ekleyin: alt alan adları ve ele geçirme riski her hafta taransın (1 alan adı)
  • Güvenlik araçlarında saatte 10 tarama (hesapsız günde 3), API anahtarı ve MCP
  • Taramalarınız tek panelde: bulgular, son taramada değişenler, alan adı ya da müşteri başına rapor (PDF, paylaşım bağlantısı)
Tüm ücretsiz araçlar

E-postayla kayıt olun · Hesabınız var mı? Giriş yapın

Ücretsiz hesap, kart istenmez. Takibi istediğiniz an bırakırsınız.

WordPress siteniz mi var? WP Lens ile ücretsiz tarayın

Sürümünüz etkileniyor mu? Kontrol edin

Noroxi analizi

Sizin ortamınızda ne anlama geliyor?

Yukarıdaki değerlendirme kaydın verisinden otomatik üretilir; ortamınızı bilmez. Bu açığın sizde gerçekten sömürülebilir olup olmadığını ve hangi önlemin yeteceğini ekibimiz sizin sistemlerinizde doğrular.

Bu ürünü kullanıyoruz, yardım isteyin

Etkilenen sistemler

Sürümünüz etkileniyor mu?

Ürünü seçip kullandığınız sürümü yazın. Bu kaydın sürüm aralıklarıyla tarayıcınızda karşılaştırılır; sürüm hiçbir yere gönderilmez.

ÜreticiÜrün
djangoprojectdjango
debiandebian linux
fedoraprojectfedora

Etkilenen sürümler

NVD sürüm aralıkları (katalogdaki ürünler için). Stack’inize sürümle eklerseniz eşleşme bunlarla yapılır.

  • debian debian linux9.0
  • djangoproject django2.2 ve sonrası · 2.2.21 öncesi
  • djangoproject django3.1 ve sonrası · 3.1.9 öncesi
  • djangoproject django3.2 ve sonrası · 3.2.1 öncesi
  • fedoraproject fedora34
  • fedoraproject fedora35

Paket düzeyi etkilenme

OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.

EkosistemPaketEtkilenen aralıkDüzeltme
Debian:10python-django1:1.11.29-1+deb10u11 öncesi1:1.11.29-1+deb10u11
Debian:12python-django2:2.2.21-1 öncesi2:2.2.21-1
Debian:9python-django1:1.10.7-2+deb9u13 öncesi1:1.10.7-2+deb9u13
PyPIdjango2.2 itibarıyla · 2.2.21 öncesi2.2.21
PyPIdjango3.0 itibarıyla · 3.1.9 öncesi3.1.9
PyPIdjango3.1 itibarıyla · 3.1.9 öncesi3.1.9
PyPIdjango3.2 itibarıyla · 3.2.1 öncesi3.2.1
Red Hat:openstack:16.1::el8python-django200:2.0.13-16.el8ost.1 öncesi0:2.0.13-16.el8ost.1
Red Hat:openstack:16.1::el8python-django20-bash-completion0:2.0.13-16.el8ost.1 öncesi0:2.0.13-16.el8ost.1
Red Hat:openstack:16.1::el8python3-django200:2.0.13-16.el8ost.1 öncesi0:2.0.13-16.el8ost.1
Red Hat:satellite_capsule:6.10::el7foreman0:2.5.2.17-2.el7sat öncesi0:2.5.2.17-2.el7sat
Red Hat:satellite_capsule:6.10::el7python-aiohttp0:3.7.4-1.el7pc öncesi0:3.7.4-1.el7pc
Red Hat:satellite_capsule:6.10::el7python-ecdsa0:0.13.3-2.el7pc öncesi0:0.13.3-2.el7pc
Red Hat:satellite_capsule:6.10::el7python-pyyaml0:5.4.1-1.el7pc öncesi0:5.4.1-1.el7pc
Red Hat:satellite_capsule:6.10::el7python-urllib30:1.26.5-1.el7pc öncesi0:1.26.5-1.el7pc
Red Hat:satellite_capsule:6.10::el7python3-django0:2.2.24-1.el7pc öncesi0:2.2.24-1.el7pc
Red Hat:satellite_capsule:6.10::el7python3-ecdsa0:0.13.3-2.el7pc öncesi0:0.13.3-2.el7pc
Red Hat:satellite_capsule:6.10::el7python3-pyyaml0:5.4.1-1.el7pc öncesi0:5.4.1-1.el7pc
Red Hat:satellite_capsule:6.10::el7python3-urllib30:1.26.5-1.el7pc öncesi0:1.26.5-1.el7pc
Red Hat:satellite_capsule:6.10::el7satellite0:6.10.0-3.el7sat öncesi0:6.10.0-3.el7sat
Red Hat:satellite_capsule:6.10::el7satellite-capsule0:6.10.0-3.el7sat öncesi0:6.10.0-3.el7sat
Red Hat:satellite_capsule:6.10::el7tfm-rubygem-nokogiri0:1.11.3-2.el7sat öncesi0:1.11.3-2.el7sat
Red Hat:satellite:6.10::el7candlepin0:4.0.9-1.el7sat öncesi0:4.0.9-1.el7sat
Red Hat:satellite:6.10::el7tfm-rubygem-actionpack0:6.0.3.7-1.el7sat öncesi0:6.0.3.7-1.el7sat

+67

Aynı birincil ürünün en yüksek skorlu diğer kayıtları.

  • CVE-2022-34265An issue was discovered in Django 3.2 before 3.2.14 and 4.0 before 4.0.6.
    61Bu hafta
  • CVE-2020-7471Django 1.11 before 1.11.28, 2.2 before 2.2.10, and 3.0 before 3.0.3 allows SQL Injection if untrusted data is used as a StringAgg delimiter
    59Planlayın
  • CVE-2019-19844Django before 1.11.27, 2.x before 2.2.9, and 3.x before 3.0.1 allows account takeover.
    55Planlayın

Bu üründe bundan önce ve sonra yayımlananlar

  • ← ÖncekiCVE-2021-32812 Şub 2021 · In Django 2.2 before 2.2.18, 3.0 before 3.0.12, and 3.1 before 3.1.6, the django.utils.archive.extract method (used by "startapp --template"
    23İzleyin
  • ← ÖncekiCVE-2021-286586 Nis 2021 · In Django 2.2 before 2.2.20, 3.0 before 3.0.14, and 3.1 before 3.1.8, MultiPartParser allowed directory traversal via uploaded files with su
    22İzleyin
  • Sonraki →CVE-2021-332038 Haz 2021 · Django before 2.2.24, 3.x before 3.1.12, and 3.2.x before 3.2.4 has a potential directory traversal via django.contrib.admindocs.
    20İzleyin

Düzeltme

Hangi sürüme geçmeli

Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.

Ürün / paketDüzeltilmiş sürümKaynak
debian:python-django2:2.2.21-1 · Debian:12Paket deposu (OSV)
PyPI:django2.2.21Paket deposu (OSV)
PyPI:django3.1.9Paket deposu (OSV)
PyPI:django3.2.1Paket deposu (OSV)
red hat:candlepin0:4.0.9-1.el7sat · Red Hat:satellite:6.10::el7Paket deposu (OSV)
red hat:foreman0:2.5.2.17-2.el7sat · Red Hat:satellite_capsule:6.10::el7Paket deposu (OSV)
red hat:python-aiohttp0:3.7.4-1.el7pc · Red Hat:satellite_capsule:6.10::el7Paket deposu (OSV)
red hat:python-ecdsa0:0.13.3-2.el7pc · Red Hat:satellite_capsule:6.10::el7Paket deposu (OSV)
red hat:python-pyyaml0:5.4.1-1.el7pc · Red Hat:satellite_capsule:6.10::el7Paket deposu (OSV)
red hat:python3-ecdsa0:0.13.3-2.el7pc · Red Hat:satellite_capsule:6.10::el7Paket deposu (OSV)
red hat:python3-pyyaml0:5.4.1-1.el7pc · Red Hat:satellite_capsule:6.10::el7Paket deposu (OSV)
red hat:satellite0:6.10.0-3.el7sat · Red Hat:satellite_capsule:6.10::el7Paket deposu (OSV)
red hat:satellite-capsule0:6.10.0-3.el7sat · Red Hat:satellite_capsule:6.10::el7Paket deposu (OSV)
red hat:tfm-rubygem-actionpack0:6.0.3.7-1.el7sat · Red Hat:satellite:6.10::el7Paket deposu (OSV)
red hat:tfm-rubygem-activerecord-session_store0:2.0.0-1.el7sat · Red Hat:satellite:6.10::el7Paket deposu (OSV)
red hat:tfm-rubygem-nokogiri0:1.11.3-2.el7sat · Red Hat:satellite_capsule:6.10::el7Paket deposu (OSV)
suse:ardana-cobbler8.0+git.1614096566.e8c2b27-3.44.3 · SUSE:HPE Helion OpenStack 8Paket deposu (OSV)
suse:cassandra3.11.10-5.3.5 · SUSE:HPE Helion OpenStack 8Paket deposu (OSV)
suse:crowbar-openstack4.0+git.1616146720.44daffca0-9.81.2 · SUSE:OpenStack Cloud 7Paket deposu (OSV)
suse:documentation-hpe-helion-openstack-installation8.20210512-1.32.5 · SUSE:HPE Helion OpenStack 8Paket deposu (OSV)
suse:documentation-hpe-helion-openstack-operations8.20210512-1.32.5 · SUSE:HPE Helion OpenStack 8Paket deposu (OSV)
suse:documentation-hpe-helion-openstack-opsconsole8.20210512-1.32.5 · SUSE:HPE Helion OpenStack 8Paket deposu (OSV)
suse:grafana6.7.4-1.24.2 · SUSE:OpenStack Cloud 7Paket deposu (OSV)
suse:kibana4.6.6-9.2 · SUSE:OpenStack Cloud 7Paket deposu (OSV)
suse:monasca-installer20180608_12.47-16.2 · SUSE:OpenStack Cloud 7Paket deposu (OSV)
suse:python-Django1.8.19-3.29.1 · SUSE:OpenStack Cloud 7Paket deposu (OSV)
suse:python-py1.8.1-11.16.2 · SUSE:OpenStack Cloud 7Paket deposu (OSV)
suse:rubygem-activerecord-session_store0.1.2-3.4.2 · SUSE:OpenStack Cloud 7Paket deposu (OSV)

İstismar durumu

Bilinen kamuya açık istismar yok

Şu an kamuya açık bir istismar görülmedi. Bu, güvende olduğunuz anlamına gelmez; yalnızca eşiğin biraz daha yüksek olduğunu gösterir.

Araştırma bağlamı

Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.

Zaman çizelgesi

Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.

Yayın dışında tarihli olay yok.

Henüz geçmiş yok (kayıt günlük EPSS işiyle birikir).

Yama ve commit bağlantıları

Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.

CNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıklayın, aynı araştırmacının diğer kayıtlarını görün.

CNA kaydında kredi yok.

Varyant adayları

Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.

Gece hesaplanan ilişki yok.

Zincir adayları

Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.

—

Bug bounty kapsamı

Bilinen herkese açık program yok.

Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).

Ulusal bildirim (Siber Güvenlik Başkanlığı / USOM)

Bu kaydı anan resmi güvenlik bildirimleri; çözüm önerisi kurumun sayfasında.

Tüm ulusal bildirimler →

Teknik detay

Saldırı koşulları

  • İnternetten erişebilen herkes tetikleyebilir.
  • Hesap ya da parola gerekmez.
  • Kullanıcının bir şey yapması gerekmez.
  • Özel bir koşul gerekmez; tekrarlanabilir.

Başarılı olursa

Gizlilik
yüksek · veriler okunabilir
Bütünlük
yok
Erişilebilirlik
yok
Saldırı vektörü
Ağ
Karmaşıklık
Düşük
Gereken yetki
Yok
Kullanıcı etkileşimi
Gerekmez
Kapsam
Değişmez
Gizlilik etkisi
Yüksek
Bütünlük etkisi
Yok
Erişilebilirlik etkisi
Yok

CVSS vektörü

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

nvd-primary

Kök neden

Kullanıcının verdiği dosya adı izin verilen klasörle birleştiriliyor, ama sonucun hâlâ o klasörün içinde olup olmadığı kontrol edilmiyor.

Hatanın kod karşılığı

CWE-22 sınıfının tamamı

Bu zafiyet sınıfının temsili örneği. Üreticinin kaynak kodu değildir; hatalı kalıbı ve düzeltmesini gösterir.

Hatalı

ts
const file = path.join(ROOT, req.query.name);res.sendFile(file);

Düzeltilmiş

ts
const file = path.resolve(ROOT, req.query.name);if (!file.startsWith(ROOT + path.sep)) {  return res.sendStatus(400);}res.sendFile(file);

Değişiklik günlüğü

  1. Düzeltme✗ → ✓

Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →

Referanslar

Tüm kayıtlar