CRITICAL🇬🇧 English

CVE-2026-4277

Django: brak walidacji uprawnień dodawania w GenericInlineModelAdmin

CVSS 9.8v3.1pub. 2026-04-07upd. 2026-04-13

W Django odkryto podatność polegającą na braku weryfikacji uprawnień do dodawania obiektów w mechanizmie GenericInlineModelAdmin przy obsłudze spreparowanych danych POST. Umożliwia to nieuwierzytelnionemu atakującemu ominięcie kontroli dostępu i zapis danych bez odpowiednich uprawnień.

Pokaż oryginał (EN)

An issue was discovered in 6.0 before 6.0.4, 5.2 before 5.2.13, and 4.2 before 4.2.30. Add permissions on inline model instances were not validated on submission of forged `POST` data in `GenericInlineModelAdmin`. 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 N05ec@LZU-DSLab for reporting this issue.

🤖 Analiza AI
Jak działa

Podatność (CWE-862 — Missing Authorization) dotyczy komponentu GenericInlineModelAdmin w panelu administracyjnym Django. Podczas przesyłania formularza zawierającego spreparowane dane POST uprawnienia do dodawania obiektów dla powiązanych modeli inline nie były weryfikowane po stronie serwera. Atakujący może skonstruować odpowiednie żądanie POST i przesłać je bezpośrednio, omijając standardową ścieżkę interfejsu, co skutkuje nieautoryzowanym dodaniem rekordów do bazy danych.

Skutki

Atakujący bez wymaganych uprawnień może nieautoryzowanie tworzyć lub modyfikować obiekty modeli inline w panelu administracyjnym Django, co prowadzi do naruszenia integralności i poufności danych oraz kompromitacji logiki biznesowej aplikacji.

Mitygacja

Należy zaktualizować Django do wersji 6.0.4, 5.2.13 lub 4.2.30 (w zależności od stosowanej gałęzi). Dla nieobsługiwanych wersji (5.0.x, 4.1.x, 3.2.x) zaleca się pilną migrację do obsługiwanej gałęzi i zastosowanie odpowiedniego patcha.

Kogo dotyczy

Django w wersjach: 6.0 przed 6.0.4, 5.2 przed 5.2.13 oraz 4.2 przed 4.2.30. Starsze, nieobsługiwane gałęzie (5.0.x, 4.1.x, 3.2.x) nie były oceniane i mogą być również podatne.

Uwagi

Podatność została zgłoszona przez N05ec@LZU-DSLab. Starsze gałęzie Django (5.0.x, 4.1.x, 3.2.x) nie zostały formalnie ocenione przez producenta, lecz mogą być podatne — organizacje korzystające z tych wersji powinny potraktować kwestię priorytetowo.

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

    APP
    Djangoproject
    4.2 – 4.2.30 (bez)5.2 – 5.2.13 (bez)6.0 – 6.0.4 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2025-64459CRITICAL9.1PL ✓ten sam produkt

SQL injection w Django via argument _connector w QuerySet i Q()

CVE-2024-53908CRITICAL9.8PL ✓ten sam produkt

SQL Injection w Django przez HasKey lookup na bazie Oracle

CVE-2023-31047CRITICAL9.8ten sam produkt

In Django 3.2 before 3.2.19, 4.x before 4.1.9, and 4.2 before 4.2.1, it was possible to bypass validation when...

CVE-2022-34265CRITICAL9.8ten sam produkt

An issue was discovered in Django 3.2 before 3.2.14 and 4.0 before 4.0.6. The Trunc() and Extract() database f...

CVE-2022-28346CRITICAL9.8ten sam produkt

An issue was discovered in Django 2.2 before 2.2.28, 3.2 before 3.2.13, and 4.0 before 4.0.4. QuerySet.annotat...