CVE-2024-39330
Vulnerability Summary
Timeline
Description
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.)
CVSS Metrics
- v4.0•HIGH•Score: 8.7CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
- v3.1•MEDIUM•Score: 4.3CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
- v3.1•HIGH•Score: 7.5CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
EPSS Trends
Current EPSS score: 0.19%• Percentile: 40%
Techniques & Countermeasures
- CWE-22•Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.
Affected Systems
- djangoproject•django
≥ 4.2, < 4.2.14 | ≥ 5.0, < 5.0.7
- PyPI•django
≥ 5.0, < 5.0.7 | ≥ 4.2, < 4.2.14
References (12)
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#%21forum/django-announce
- https://www.djangoproject.com/weblog/2024/jul/09/security-releases/
- https://security.netapp.com/advisory/ntap-20240808-0005/
- https://nvd.nist.gov/vuln/detail/CVE-2024-39330
- https://github.com/django/django/commit/2b00edc0151a660d1eb86da4059904a0fc4e095e
- https://github.com/django/django/commit/9f4f63e9ebb7bf6cb9547ee4e2526b9b96703270
- https://docs.djangoproject.com/en/dev/releases/security
- https://github.com/django/django
- https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2024-58.yaml
- https://security.netapp.com/advisory/ntap-20240808-0005
- https://www.djangoproject.com/weblog/2024/jul/09/security-releases