CVE-2026-15830
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 54 - wyżej niż 54% wszystkich znanych CVE
Streszczenie
W Django 6.0 przed 6.0.9 oraz 5.2 przed 5.2.18 wykryto podatność w GeoDjango. Komponent django.contrib.gis.geos.GEOSGeometry jest narażony na potencjalną odmowę usługi podczas przetwarzania głęboko zagnieżdżonych obiektów GEOMETRYCOLLECTION dostarczonych w formacie WKT, WKB lub hex-encoded WKB, co wywołuje nieograniczoną rekurencję i błąd segmentacji w bibliotece GEOS. Dotyczy to również wyszukiwań w polach przestrzennych oraz pola formularza django.contrib.gis.forms.GeometryField.
Ocena ryzyka
Atakujący może wywołać awarię aplikacji poprzez przesłanie specjalnie spreparowanego obiektu geometrycznego, co prowadzi do niedostępności usługi. Ryzyko dotyczy organizacji wykorzystujących funkcje GIS w Django, zwłaszcza przy przetwarzaniu danych pochodzących od użytkowników.
Rekomendacja
Należy zaktualizować Django do wersji 6.0.9, 5.2.18 lub nowszej. W przypadku braku możliwości natychmiastowej aktualizacji zaleca się ograniczenie przyjmowania niezaufanych danych geometrycznych w formatach WKT/WKB.
Inne podatności w Django
Zobacz wszystkie- CVE-2026-87975Średnie
W Django 6.1 przed 6.1.2, 6.0 przed 6.0.9 i 5.2 przed 5.2.18, funkcja django.forms.models.BaseModelFormSet.save_existing_objects() używa obecności klucza głównego na instancji formularza jako dowodu przynależności do queryset. Obiekt spoza queryset może zostać usunięty przez uwierzytelnionego użytkownika bez uprawnień do tego obiektu, poprzez sfałszowane dane formularza. Modele z domyślnym AutoField nie są dotknięte.
- CVE-2026-87890Średnie
W Django 6.1 przed 6.1.2, 6.0 przed 6.0.9 i 5.2 przed 5.2.18, niekompletna poprawka dla CVE-2026-15307 w przestrzennych zapytaniach (spatial lookups) pozwala atakującemu, który może dostarczyć wartości bytes, na spowodowanie, że proces Django wykona żądania sieciowe poprzez spreparowany dokument VRT odwołujący się do zewnętrznego źródła rastrowego.
- CVE-2026-84429Średnie
W Django 6.1 przed 6.1.2, 6.0 przed 6.0.9 i 5.2 przed 5.2.18, funkcja django.utils.http.parse_header_parameters() jest podatna na atak DoS z powodu kwadratowej złożoności czasowej podczas parsowania wartości z wieloma separatorami w cytowanym parametrze. Nieuwierzytelnione żądanie może dotrzeć do tego parsowania przez nagłówki takie jak Accept lub Content-Type.
- CVE-2026-77050Średnie
W Django 6.1 przed 6.1.2, 6.0 przed 6.0.9 i 5.2 przed 5.2.18, funkcja django.utils.translation.get_supported_language_variant() jest podatna na atak DoS podczas przetwarzania wielu różnych, bardzo długich kodów językowych, które są przechowywane jako klucze w pamięci podręcznej i zużywają pamięć procesu.
- CVE-2016-9014Wysokie
Django w wersjach przed 1.8.16, 1.9.11 i 1.10.3, gdy ustawienie DEBUG jest włączone, umożliwia zdalnym atakującym przeprowadzenie ataków DNS rebinding z powodu braku walidacji nagłówka HTTP Host względem ustawienia ALLOWED_HOSTS.
- CVE-2016-7401Wysokie
Kod parsowania ciasteczek w Django przed wersją 1.8.15 oraz 1.9.x przed wersją 1.9.10, używany na stronie z Google Analytics, pozwala zdalnym atakującym na obejście zamierzonego mechanizmu ochrony CSRF poprzez ustawienie dowolnych ciasteczek.
- CVE-2016-2512Wysokie
Funkcja utils.http.is_safe_url w Django przed wersją 1.8.10 oraz 1.9.x przed wersją 1.9.3 umożliwia zdalnym atakującym przekierowywanie użytkowników na dowolne strony internetowe. Może to prowadzić do ataków phishingowych lub potencjalnie do ataków typu cross-site scripting (XSS) za pomocą URL zawierającego podstawową autoryzację.
- CVE-2015-5143Wysokie
Wersje Django przed 1.4.21, 1.5.x do 1.6.x, 1.7.x przed 1.7.9 oraz 1.8.x przed 1.8.3 są podatne na atak typu denial of service. Atakujący mogą wykorzystać unikalne klucze sesji do zapełnienia pamięci przechowującej sesje.
- CVE-2014-0474Wysokie
W wersjach Django przed 1.4.11, 1.5.x przed 1.5.6, 1.6.x przed 1.6.3 oraz 1.7.x przed 1.7 beta 2 klasy pól modelu FilePathField, GenericIPAddressField i IPAddressField nie wykonują prawidłowej konwersji typów. To może umożliwić zdalnym atakującym wywołanie nieokreślonego wpływu związane z 'typowaniem MySQL'.
- CVE-2026-5766Średnie
W wersjach 6.0 przed 6.0.5 oraz 5.2 przed 5.2.14 odkryto problem związany z żądaniami ASGI, które mogą omijać limit `FILE_UPLOAD_MAX_MEMORY_SIZE` w przypadku brakującego lub niedostatecznego nagłówka `Content-Length`. Może to prowadzić do załadowania dużych plików do pamięci, co skutkuje degradacją usługi.
Oryginalny opis (angielski, źródło NVD)
An issue was discovered in Django 6.0 before 6.0.9 and 5.2 before 5.2.18. GeoDjango's `django.contrib.gis.geos.GEOSGeometry` is subject to a potential denial-of-service when parsing deeply nested `GEOMETRYCOLLECTION` objects supplied as well-known text (WKT), well-known binary (WKB), or hex-encoded WKB, which triggers unbounded recursion and a segmentation fault in the underlying GEOS library. Spatial field lookups and the `django.contrib.gis.forms.GeometryField` form field are also affected. Earlier, unsupported Django series (such as 5.1.x, 5.0.x, and 4.2.x) were not evaluated and may also be affected. Django would like to thank Andrew MacPherson and kimchunbok_ for reporting this issue.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

