PatchSiren

PatchSiren cyber security CVE debrief

CVE-2026-15307 djangoproject CVE debrief

An executive overview of CVE-2026-15307: A vulnerability was discovered in Django 5.2 before 5.2.17 and 6.0 before 6.0.8, affecting GeoDjango spatial lookups. The issue allows for remote code execution through file writing and outbound network requests. Staff users with view permission in Django admin can be impacted. The vulnerability has a CVSS score of 8.7 and is classified as HIGH. The CVE record was published on 2026-08-04T17:16:46.127Z and has not been modified since then.

Vendor
djangoproject
Product
Django
CVSS
HIGH 8.7
CISA KEV
Not listed in stored evidence
Original CVE published
2026-08-04
Original CVE updated
2026-08-18
Advisory published
2026-08-04
Advisory updated
2026-08-18

Who should care

Developers and administrators using Django 5.2 before 5.2.17 and 6.0 before 6.0.8, especially those with staff users having view permission in Django admin, should be aware of this vulnerability and take necessary actions to mitigate it.

Technical summary

An issue was discovered in Django 5.2 before 5.2.17 and 6.0 before 6.0.8. GeoDjango spatial lookups optimistically parse the right-hand-side value as a raster by passing it to the `django.contrib.gis.gdal.GDALRaster` constructor. Any value used in a spatial lookup against a `GeometryField` or `RasterField` reaches this constructor, including untrusted input, for example a spatial-field filter submitted through the Django admin changelist query string by a staff user with view permission. A `dict`, or a `str` holding its JSON representation, is opened in write mode regardless of the constructor's `write=False` default, allowing a file with an attacker-chosen name and contents to be written through a file-backed GDAL driver. Any other `str` is treated as a datasource, allowing an outbound network request through a GDAL virtual filesystem handler. Writing a file to a location later imported by the application can result in remote code execution.

Defensive priority

Staff users with view permission in Django admin can be impacted by this vulnerability, which allows remote code execution through file writing and outbound network requests.

Recommended defensive actions

  • Review and apply Django security updates to ensure the system is running version 5.2.17 or 6.0.8 or later.
  • Restrict access to Django admin to trusted users only.
  • Monitor for suspicious network requests and file writes.
  • Consider implementing additional security measures such as Web Application Firewalls (WAFs) and intrusion detection systems.
  • Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up.
  • Review the supplied official advisory or CVE record to validate affected scope, severity, and vendor guidance.
  • Plan vendor-supported updates or mitigations through normal change control where exposure is confirmed.

Evidence notes

The CVE record was published on 2026-08-04T17:16:46.127Z and has not been modified since then. The NVD entry is currently Received. Official references include CVE.org, NVD, and multiple GitHub commits.

Sources and references

Verified primary and authoritative sources

  • CVE-2026-15307 CVE Program record

    Publisher, destination, and source semantics verified

    URL: https://www.cve.org/CVERecord?id=CVE-2026-15307

    CVE Program - Official CVE Program record with source-provided CVE metadata.

  • CVE-2026-15307 NVD vulnerability detail

    Publisher, destination, and source semantics verified

    URL: https://nvd.nist.gov/vuln/detail/CVE-2026-15307

    NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.

Supplemental references

  • Source reference

    Unverified legacy reference

    URL: https://docs.djangoproject.com/en/dev/releases/security/

    6a34fbeb-21d4-45e7-8e0a-62b95bc12c92

  • Source reference

    Unverified legacy reference

    URL: https://github.com/django/django/commit/115ffd0463a765ab1cc93de18e94b5459b8a300e

    6a34fbeb-21d4-45e7-8e0a-62b95bc12c92

  • Source reference

    Unverified legacy reference

    URL: https://github.com/django/django/commit/208f80cb682868b584ed0a78f23e4ba6304212aa

    6a34fbeb-21d4-45e7-8e0a-62b95bc12c92

  • Source reference

    Unverified legacy reference

    URL: https://github.com/django/django/commit/39b3e2d0c743a338def6c473086ebc06865e86b6

    6a34fbeb-21d4-45e7-8e0a-62b95bc12c92

  • Source reference

    Unverified legacy reference

    URL: https://github.com/django/django/commit/f1949c1f9758947ade984c895ff16bef46f56520

    6a34fbeb-21d4-45e7-8e0a-62b95bc12c92

  • Source reference

    Unverified legacy reference

    URL: https://groups.google.com/g/django-announce

    6a34fbeb-21d4-45e7-8e0a-62b95bc12c92

  • Source reference

    Unverified legacy reference

    URL: https://www.djangoproject.com/weblog/2026/aug/04/security-releases/

    6a34fbeb-21d4-45e7-8e0a-62b95bc12c92

Methodology and review provenance

AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.