Junglewise Threat Intelligence

CVE-2026-15830: Django GeoDjango unbounded recursion denial of service

CVE-2026-15830 · Severity: medium · CVSS 5.3 · Published 2026-08-04

Technologies: Django (PyPI), Django Software Foundation Django. Vendors: PyPI, Django Software Foundation.

Executive brief

Django is a widely-used web framework that includes optional GeoDjango functionality for handling geographic data. A denial-of-service vulnerability exists in GeoDjango's geometry parsing when processing deeply nested spatial objects, which can crash the application through resource exhaustion. An attacker can exploit this by supplying malicious geographic data through web forms or spatial queries, potentially disrupting service availability for all users.

Technical details

The vulnerability is a denial-of-service condition in Django's `django.contrib.gis.geos.GEOSGeometry` class caused by unbounded recursion when parsing deeply nested `GEOMETRYCOLLECTION` objects supplied in well-known text (WKT), well-known binary (WKB), or hex-encoded WKB formats. The root cause is insufficient recursion depth checking in the geometry parser, which triggers a segmentation fault in the underlying GEOS library. The vulnerability affects spatial field lookups and the `django.contrib.gis.forms.GeometryField` form field. Attack vectors include any application endpoint accepting geometry data from untrusted sources (e.g., map applications, GIS API endpoints). Patches are available in Django 5.2.17, 6.0.8, and 6.1+.

Affected products

  • Django Software Foundation Django 5.2 before 5.2.17, 6.0 before 6.0.8

Timeline

  • 2026-08-04: disclosed
  • 2026-08-04: patched: Patches released for Django 5.2.17, 6.0.8, and 6.1

References

Related threats