Skip to content
Fencer Vulns
medium 4.3

CVE-2024-39330 json

Django Path Traversal vulnerability

published 2024-07-10 2 y ago modified 2026-09-10 59 d ago also BIT-django-2024-39330 , EUVD-2024-0042 , GHSA-9jmf-237g-qf46 , PYSEC-2024-58

cvss
4.3
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
1.0%
EPSS 1.0% chance of exploitation in 30 days, percentile 63%
public exploits
0
none known

Summary

An issue was discovered in Django 5.0 before 5.0.7 and 4.2 before 4.2.14. Derived classes of the django.core.files.storage.Storage base class, when they override generate_filename() without replicating the file-path validations from the parent class, potentially allow directory traversal via certain inputs during a save() call. (Built-in Storage sub-classes are unaffected.)

Patch / fix

  • pypi django 4.2.14, 5.0.7
  • bitnami django 4.2.14, 5.0.7
  • djangoproject django 4.2.14, 5.0.7
  • python-django Debian 12 3:3.2.25-0+deb12u1
  • python-django Debian 14, Debian 13 3:4.2.14-1

debian advisories DEBIAN-CVE-2024-39330

  • python-django Ubuntu 20.04 LTS 2:2.2.12-1ubuntu0.23
  • python-django Ubuntu 22.04 LTS 2:3.2.12-2ubuntu1.12
  • python-django Ubuntu 24.04 LTS 3:4.2.11-1ubuntu1.1
  • python-django Ubuntu Pro 18.04 LTS 1:1.11.11-1ubuntu1.21+esm5

ubuntu advisories UBUNTU-CVE-2024-39330

Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

  • cjson satellite capsule 6.16, satellite 6.16 1.7.17-1.el8sat
  • cjson satellite capsule 6.16, satellite 6.16 1.7.17-1.el9sat
  • foreman satellite utils 6.16, satellite capsule 6.16, satellite 6.16 3.12.0.1-1.el8sat
  • foreman satellite utils 6.16, satellite capsule 6.16, satellite 6.16 3.12.0.1-1.el9sat
  • katello satellite capsule 6.16, satellite 6.16 4.14.0-0.1.rc2.el8sat
  • katello satellite capsule 6.16, satellite 6.16 4.14.0-0.1.rc2.el9sat
  • libsolv satellite capsule 6.16, satellite 6.16 1:0.7.20-6.el8sat
  • libcomps satellite capsule 6.16, satellite 6.16 0.1.21-1.el8pc

red hat advisories RHSA-2024:8906RHSA-2024:9481RHSA-2024:6428

  • python-Django SLE Module for Package Hub 15 SP6, openSUSE Leap 15.6 4.2.11-150600.3.3.1
  • python-Django openSUSE Leap 15.5 2.0.7-150000.1.20.1

suse advisories SUSE-SU-2024:2577-1SUSE-SU-2024:2545-1

  • python-Django5 openSUSE Tumbleweed 5.2.16-1.1
  • python-Django openSUSE Tumbleweed 5.2.16-1.1
  • python-Django4 openSUSE Tumbleweed 4.2.30-4.1
  • python-django-storages openSUSE Tumbleweed 1.14.6-1.1
  • python-Django6 openSUSE Tumbleweed 6.0-1.1
  • python-Django Package Hub 15 SP5, openSUSE Leap 15.5 2.2.28-bp155.7.12.1
  • python-Django4 openSUSE Tumbleweed 4.2.14-1.1
  • python-Django openSUSE Tumbleweed 5.0.7-2.1

opensuse advisories openSUSE-SU-2026:11270-1openSUSE-SU-2026:11248-1openSUSE-SU-2026:11235-1openSUSE-SU-2026:10125-1openSUSE-SU-2026:10005-1openSUSE-SU-2024:0251-1

  • py3-django Alpine 3.24, Alpine 3.23, Alpine 3.22 +2 more 4.2.16-r0

alpine advisories ALPINE-CVE-2024-39330

Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2024-39330 updated cvss 4.3

python-django: Potential directory-traversal in django.core.files.storage.Storage.save()

  • Red Hat Ansible Automation Platform 1.2 ansible-tower
    affected: workaround, no fix available
  • Red Hat Ansible Automation Platform 2 automation-controller, ansible-automation-platform-25/lightspeed-rhel8 Red Hat Certification for Red Hat Enterprise Linux 7 python-django Red Hat Certification for Red Hat Enterprise Linux 8 redhat-certification Red Hat Certification Program for Red Hat Enterprise Linux 9 redhat-certification
    affected: workaround, no fix available “Fix deferred”
  • Red Hat Discovery 1 discovery-server-container
    affected: workaround, no fix available
  • Red Hat OpenStack Platform 16.1 python-django20, python3-django20, python-django20-bash-completion
    affected: workaround, no fix planned “Out of support scope”
  • Red Hat OpenStack Platform 16.2 python-django20, python3-django20, python-django20-bash-completion Red Hat OpenStack Platform 17.1 python-django, python3-django
    affected: workaround, no fix available “Fix deferred”
  • Red Hat Storage 3 python-django, python2-django, python-django-bash-completion
    affected: workaround, no fix planned “Out of support scope”
  • Red Hat Update Infrastructure 4 for Cloud Providers python-django
    affected: workaround, no fix available “Fix deferred”
  • Red Hat Ansible Automation Platform 2.4 for RHEL 8 python39-django 4.2.15-1.el8ap, python3x-django 4.2.15-1.el8ap Red Hat Ansible Automation Platform 2.4 for RHEL 9 python-django 4.2.15-1.el9ap, python3-django 4.2.15-1.el9ap
    fixed: vendor fix RHSA-2024:6428
show 3 more
  • Red Hat OpenStack Services on OpenShift 18.0 python-django 3.2.12-8.el9ost, python3-django 3.2.12-8.el9ost
    fixed: vendor fix RHSA-2024:9481
  • Red Hat Satellite 6.16 for RHEL 8 python-django 4.2.16-1.el8pc, python3.11-django 4.2.16-1.el8pc Red Hat Satellite 6.16 for RHEL 9 python-django 4.2.16-1.el9pc, python3.11-django 4.2.16-1.el9pc
    fixed: vendor fix RHSA-2024:8906
  • Red Hat Ansible Automation Platform 2.4 for RHEL 8 python39-zipp 3.19.2-1.el8ap, python39-grpcio 1.58.3-1.el8ap, python3x-grpcio 1.58.3-1.el8ap, python39-gunicorn 22.0.0-2.el8ap, python39-jmespath 0.10.0-5.el8ap, python3x-gunicorn 22.0.0-2.el8ap, +10 more Red Hat Ansible Automation Platform 2.4 for RHEL 9 python-zipp 3.19.2-1.el9ap, python3-zipp 3.19.2-1.el9ap, python-grpcio 1.58.3-1.el9ap, python3-grpcio 1.58.3-1.el9ap, python-gunicorn 22.0.0-2.el9ap, python-jmespath 0.10.0-5.el9ap, +11 more Red Hat Satellite 6.16 for RHEL 8 cjson 1.7.17-1.el8sat, libcomps 0.1.21-1.el8pc, libsolv 0.7.20-6.el8sat, python-jq 1.6.0-3.el8pc, python-pbr 5.8.0-7.el8pc, candlepin 4.4.16-1.el8sat, +675 more Red Hat Satellite 6.16 for RHEL 9 cjson 1.7.17-1.el9sat, libcomps 0.1.21-1.el9pc, python-jq 1.6.0-3.el9pc, python-pbr 5.8.0-7.el9pc, candlepin 4.4.16-1.el9sat, foreman 3.12.0.1-1.el9sat, +645 more
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

CISA SSVC

Exploitation
none
Automatable
no
Technical impact
partial
Assessed
2 y ago

Exploit prediction

1.01% chance of exploitation in the next 30 days, higher than 63% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
CISA ADP 3.1 4.3 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
GitHub 3.1 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
CNA 3.1 4.3 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
OSV 3.1 4.3 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N

Affected packages

ecosystem package affected fixed in
pypi django
>=5.0, <5.0.7
>=4.2, <4.2.14
5.0.7
4.2.14
bitnami django
>=4.2.0, <4.2.14
>=5.0.0, <5.0.7
4.2.14
5.0.7

Classification

Weakness
  • CWE-22 Improper Limitation of a Pathname to a Restricted Directory
Technology feeds

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.

CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.