Server-side Request Forgery (SSRF) Affecting django package, versions [5.2a1, 5.2.19)[6.0a1, 6.0.10)[6.1a1, 6.1.3)


Severity

Recommended
0.0
medium
0
10

CVSS assessment by Snyk's Security Team. Learn more

Threat Intelligence

EPSS
0.43% (38th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Server-side Request Forgery (SSRF) vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-PYTHON-DJANGO-22200451
  • published4 Nov 2026
  • disclosed3 Nov 2026
  • creditAdraca

Introduced: 3 Nov 2026

NewCVE-2026-114582  (opens in a new tab)
CWE-918  (opens in a new tab)

How to fix?

Upgrade Django to version 5.2.19, 6.0.10, 6.1.3 or higher.

Overview

Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.

Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) in the SpatialReference class in django/contrib/gis/gdal/srs.py, reached through GEOSGeometry.transform(), OGRGeometry.transform(), GDALRaster.transform(), and the srs and srid setters of OGRGeometry and GDALRaster. An attacker can make the server issue outbound file and network requests, and by observing those requests infer local file contents, by supplying an untrusted spatial-reference string that GDAL's OSRSetFromUserInput resolves as an external reference. Exploitation requires an application that passes untrusted input into GeoDjango's spatial-reference handling, and the external resolution is a default of the underlying GDAL library.

Workaround

This vulnerability can be avoided by setting spatial reference systems from integer SRID values, or by validating string inputs against an allow list before passing them to any SRS constructor, transform, or setter.

CVSS Base Scores

version 4.0
version 3.1