Potential SQL injection via QuerySet.order_by and FilteredRelation
An issue was discovered in 6.0 before 6.0.2, 5.2 before 5.2.11, and 4.2 before 4.2.28. `.QuerySet.order_by()` is subject to SQL injection in column aliases containing periods when the same alias is, using a suitably crafted dictionary, with dictionary expansion, used in `FilteredRelation`. Earlier, unsupported Django series (such as 5.0.x, 4.1.x, and 3.2.x) were not evaluated and may also be affected. Django would like to thank Solomon Kebede for reporting this issue.
- Yayın
- 3 Şub 2026
- Güncelleme
- 15 Tem 2026
- EPSS
- %0,9 · 57. yüzdelik
- CWE
- CWE-89
Takip etmek için giriş yap · Takip ettiğin kayıt KEV’e girer, istismarı çıkar ya da güncellenirse bildirim alırsın.
Rapor araçları
Aksiyon skoru
21
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 21 / 40 · 5.4 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %0,9
CISA SSVC kararı
- Sömürü
- yok
- Otomatikleştirilebilir
- hayır
- Teknik etki
- kısmi
Vulnrichment: CISA'nın karar ağacı girdileri.
Etkilenen sistemler
| Üretici | Ürün | CPE |
|---|---|---|
| djangoproject | django | cpe:2.3:a:djangoproject:django |
Etkilenen sürümler
NVD sürüm aralıkları (katalogdaki ürünler için). Stack’ine sürümle eklersen eşleşme bunlarla yapılır.
- djangoproject django4.2 ve sonrası · 4.2.28 öncesi
- djangoproject django5.2 ve sonrası · 5.2.11 öncesi
- djangoproject django6.0 ve sonrası · 6.0.2 öncesi
Üreticinin bildirdiği sürümler
Kaydı açan otorite (DSF) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
djangoproject Django
- 6.0.2, 5.2.11, 4.2.28etkilenmez
- 6.0 ve sonrası · 6.0.2 öncesietkilenir · semver
- 5.2 ve sonrası · 5.2.11 öncesietkilenir · semver
- 4.2 ve sonrası · 4.2.28 öncesietkilenir · semver
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| Debian:11 | python-django | 2:2.2.28-1~deb11u12 öncesi | 2:2.2.28-1~deb11u12 |
| Debian:12 | python-django | 3:3.2.25-0+deb12u2 öncesi | 3:3.2.25-0+deb12u2 |
| Debian:13 | python-django | 3:4.2.28-0+deb13u1 öncesi | 3:4.2.28-0+deb13u1 |
| Debian:14 | python-django | 3:4.2.28-1 öncesi | 3:4.2.28-1 |
| openSUSE:Leap 16.0 | python-Django | 5.2.4-bp160.5.1 öncesi | 5.2.4-bp160.5.1 |
| openSUSE:Tumbleweed | python-Django | 5.2.11-1.1 öncesi | 5.2.11-1.1 |
| openSUSE:Tumbleweed | python-Django4 | 4.2.28-1.1 öncesi | 4.2.28-1.1 |
| openSUSE:Tumbleweed | python-Django6 | 6.0.2-1.1 öncesi | 6.0.2-1.1 |
| PyPI | django | 4.2 itibarıyla · 4.2.28 öncesi | 4.2.28 |
| PyPI | django | 4.2a1 itibarıyla · 4.2.28 öncesi | 4.2.28 |
| PyPI | django | 5.2 itibarıyla · 5.2.11 öncesi | 5.2.11 |
| PyPI | django | 5.2a1 itibarıyla · 5.2.11 öncesi | 5.2.11 |
| PyPI | django | 6.0 itibarıyla · 6.0.2 öncesi | 6.0.2 |
| PyPI | django | 6.0a1 itibarıyla · 6.0.2 öncesi | 6.0.2 |
| Red Hat:ansible_automation_platform_developer:2.5::el8 | automation-controller | 0:4.6.26-1.el8ap öncesi | 0:4.6.26-1.el8ap |
| Red Hat:ansible_automation_platform_developer:2.5::el8 | automation-controller-cli | 0:4.6.26-1.el8ap öncesi | 0:4.6.26-1.el8ap |
| Red Hat:ansible_automation_platform_developer:2.5::el8 | python3.12-django | 0:4.2.28-1.el8ap öncesi | 0:4.2.28-1.el8ap |
| Red Hat:ansible_automation_platform_developer:2.5::el8 | receptor | 0:1.6.3-4.el8ap öncesi | 0:1.6.3-4.el8ap |
| Red Hat:ansible_automation_platform_developer:2.5::el8 | receptorctl | 0:1.6.3-4.el8ap öncesi | 0:1.6.3-4.el8ap |
| Red Hat:ansible_automation_platform_developer:2.5::el9 | automation-controller | 0:4.6.26-1.el9ap öncesi | 0:4.6.26-1.el9ap |
| Red Hat:ansible_automation_platform_developer:2.5::el9 | automation-controller-cli | 0:4.6.26-1.el9ap öncesi | 0:4.6.26-1.el9ap |
| Red Hat:ansible_automation_platform_developer:2.6::el9 | automation-controller | 0:4.7.9-1.el9ap öncesi | 0:4.7.9-1.el9ap |
| Red Hat:ansible_automation_platform_developer:2.6::el9 | automation-controller-cli | 0:4.7.9-1.el9ap öncesi | 0:4.7.9-1.el9ap |
| Red Hat:ansible_automation_platform_developer:2.6::el9 | python3.12-django | 0:4.2.28-1.el9ap öncesi | 0:4.2.28-1.el9ap |
+96
Aynı üründe
djangoproject: tüm kayıtlarAynı 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
- CVE-2019-14234An issue was discovered in Django 1.11.x before 1.11.23, 2.1.x before 2.1.11, and 2.2.x before 2.2.4.53Planlayın
- CVE-2021-35042Django 3.1.x before 3.1.13 and 3.2.x before 3.2.5 allows QuerySet.order_by SQL injection if order_by is untrusted input from a client of a w52Planlayın
- CVE-2023-24580An issue was discovered in the Multipart Request Parser in Django 3.2 before 3.2.18, 4.0 before 4.0.10, and 4.1 before 4.1.7.49Planlayın
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 / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| djangoproject Django | 4.2.28 | Üretici (CNA) |
| djangoproject Django | 5.2.11 | Üretici (CNA) |
| djangoproject Django | 6.0.2 | Üretici (CNA) |
| debian:python-django | 3:3.2.25-0+deb12u2 · Debian:12 | Paket deposu (OSV) |
| opensuse:python-Django | 4.2.11-150600.3.47.1 · openSUSE:Leap 15.6 | Paket deposu (OSV) |
| opensuse:python-Django4 | 4.2.28-1.1 · openSUSE:Tumbleweed | Paket deposu (OSV) |
| opensuse:python-Django6 | 6.0.2-1.1 · openSUSE:Tumbleweed | Paket deposu (OSV) |
| PyPI:django | 4.2.28 | Paket deposu (OSV) |
| PyPI:django | 5.2.11 | Paket deposu (OSV) |
| PyPI:django | 6.0.2 | Paket deposu (OSV) |
| red hat:automation-platform-ui | 0:2.6.6-1.el9ap · Red Hat:ansible_automation_platform:2.6::el9 | Paket deposu (OSV) |
| red hat:python3.12-aiohttp | 0:3.13.3-2.el9ap · Red Hat:ansible_automation_platform:2.6::el9 | Paket deposu (OSV) |
| red hat:python3.12-aiohttp-debuginfo | 0:3.13.3-2.el9ap · Red Hat:ansible_automation_platform:2.6::el9 | Paket deposu (OSV) |
| red hat:python3.12-aiohttp-debugsource | 0:3.13.3-2.el9ap · Red Hat:ansible_automation_platform:2.6::el9 | Paket deposu (OSV) |
| red hat:python3.12-django | 0:4.2.30-1.el9pc · Red Hat:satellite_capsule:6.18::el9 | Paket deposu (OSV) |
| red hat:python3.12-markdown | 0:3.8.2-1.el9pc · Red Hat:satellite_capsule:6.18::el9 | Paket deposu (OSV) |
| red hat:python3.12-pyOpenSSL | 0:26.0.0-2.el9pc · Red Hat:satellite_capsule:6.18::el9 | Paket deposu (OSV) |
| red hat:receptor | 0:1.6.3-4.el10ap · Red Hat:ansible_automation_platform:2.6::el10 | Paket deposu (OSV) |
| red hat:receptor-debuginfo | 0:1.6.3-4.el10ap · Red Hat:ansible_automation_platform:2.6::el10 | Paket deposu (OSV) |
| red hat:receptor-debugsource | 0:1.6.3-4.el10ap · Red Hat:ansible_automation_platform:2.6::el10 | Paket deposu (OSV) |
| red hat:receptorctl | 0:1.6.3-4.el10ap · Red Hat:ansible_automation_platform:2.6::el10 | Paket deposu (OSV) |
| red hat:rubygem-activesupport | 0:7.0.8.7-2.el9sat · Red Hat:satellite_capsule:6.18::el9 | Paket deposu (OSV) |
| suse:python-Django | 4.2.11-150600.3.47.1 · SUSE:Linux Enterprise Module for Package Hub 15 SP7 | Paket deposu (OSV) |
İstismar durumu
Kavram kanıtı mevcut
Kamuya açık bir kavram kanıtı ya da tespit imzası var. İstismar bilgisi dışarıda; yamayı geciktirmeyin.
Kanıt
- GitHub’da kavram kanıtı deposu ×2
Noroxi istismar kodu barındırmaz ve istismar bağlantısı vermez. Metasploit modül adı ve Nuclei şablon kimliği gösterilir (kod değil, ad); Exploit-DB kayıtları ve PoC depoları yalnızca sayı olarak verilir.
| Kaynak | Tür | Tarih |
|---|---|---|
| GitHub’da kavram kanıtı deposu | stars:2 | 2026-02-21 |
| GitHub’da kavram kanıtı deposu | stars:0 | 2026-04-10 |
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
- İlk kavram kanıtı+18 gün
- Bugün30 Eyl 2026+239 gün
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
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.
Referanslarda commit ya da PR bağlantısı yok.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıkla, aynı araştırmacının diğer kayıtlarını gör.
- Solomon Kebedebildiren
- Jacob Wallsdüzeltme geliştirici
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
- CVE-2025-6445990 gün araylaPotential SQL injection via _connector keyword argument in QuerySet and Q objects42Planlayın
- CVE-2025-59681125 gün araylaAn issue was discovered in Django 4.2 before 4.2.25, 5.1 before 5.1.13, and 5.2 before 5.2.7.39İzleyin
- CVE-2024-53908424 gün araylaAn issue was discovered in Django 5.1 before 5.1.4, 5.0 before 5.0.10, and 4.2 before 4.2.17.39İzleyin
- CVE-2025-57833153 gün araylaAn issue was discovered in Django 4.2 before 4.2.24, 5.1 before 5.1.12, and 5.2 before 5.2.6.37İzleyin
- CVE-2026-12070 gün araylaPotential SQL injection via raster lookups on PostGIS25İzleyin
- CVE-2026-12870 gün araylaPotential SQL injection in column aliases via control characters21İzleyin
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.
- CVE-2026-390263 gün araylaASGI header spoofing via underscore/hyphen conflation30İzleyin
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- İnternetten erişebilen herkes tetikleyebilir.
- Düşük yetkili bir hesap yeterli.
- Kullanıcının bir şey yapması gerekmez.
- Özel bir koşul gerekmez; tekrarlanabilir.
Başarılı olursa
- Gizlilik
- düşük · veriler okunabilir
- Bütünlük
- düşük · veri ya da yapılandırma değiştirilebilir
- Erişilebilirlik
- yok
- Saldırı vektörü
- Ağ
- Karmaşıklık
- Düşük
- Gereken yetki
- Düşük
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- Değişmez
- Gizlilik etkisi
- Düşük
- Bütünlük etkisi
- Düşük
- Erişilebilirlik etkisi
- Yok
Zayıflık sınıfı (CWE)
CWE-89 · Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')CVSS vektörü
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
nvd-secondary
Kök neden
Sorgu metni, kullanıcı girdisiyle birleştirilerek oluşturuluyor. Veritabanı, verinin nerede bitip komutun nerede başladığını ayırt edemez.
Hatanın kod karşılığı
CWE-89 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ı
const owner = req.query.owner;const rows = await db.query( "SELECT * FROM files WHERE owner = '" + owner + "'");Düzeltilmiş
const owner = req.query.owner;const rows = await db.query( "SELECT * FROM files WHERE owner = $1", [owner]);Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Saldırı desenleri (CAPEC)
- Command Line Execution through SQL InjectionCAPEC-108olasılık: Low · Very High
- Object Relational Mapping InjectionCAPEC-109olasılık: Low · High
- SQL Injection through SOAP Parameter TamperingCAPEC-110olasılık: High · Very High
- Expanding Control over the Operating System from the DatabaseCAPEC-470Very High
- SQL InjectionCAPEC-66olasılık: High · High
- Blind SQL InjectionCAPEC-7olasılık: High · High
ATT&CK teknikleri
—
Noroxi analizi
Bu kayıt için henüz Noroxi analizi yok
385 binden fazla zafiyetin tamamına elle analiz yazmıyoruz; bu dürüst olmazdı. Öne çıkan ve sahada etkisi olan zafiyetler için mekanizma, tespit ve kapatma adımlarını ekibimiz yazıyor.
Bu ürünü kullanıyoruz, yardım isteyinDeğişiklik günlüğü
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
- docs.djangoproject.com/en/dev/releases/security/
- groups.google.com/g/django-announce
- www.djangoproject.com/weblog/2026/feb/03/security-releases/
- access.redhat.com/errata/RHSA-2026:14835
- access.redhat.com/errata/RHSA-2026:2694
- access.redhat.com/errata/RHSA-2026:3958
- access.redhat.com/errata/RHSA-2026:3959
- access.redhat.com/errata/RHSA-2026:3960
- access.redhat.com/errata/RHSA-2026:3962
- access.redhat.com/errata/RHSA-2026:5970
- access.redhat.com/errata/RHSA-2026:5971
- access.redhat.com/errata/RHSA-2026:6291
- access.redhat.com/security/cve/CVE-2026-1312
- bugzilla.redhat.com/show_bug.cgi?id=2436342
- security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-1312.json
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.