CVE-2026-25674
Django vulnerability analysis and mitigation

Overview

CVE-2026-25674 is a race condition vulnerability in Django's file-system storage and file-based cache backends that allows attackers to cause file system objects to be created with incorrect permissions via concurrent requests. In multi-threaded environments, one thread's temporary umask change can affect other threads, resulting in improperly permissioned files. The vulnerability affects Django 6.0 before 6.0.3, 5.2 before 5.2.12, and 4.2 before 4.2.29; earlier unsupported series (5.0.x, 4.1.x, 3.2.x) were not evaluated but may also be affected. It was disclosed on March 3, 2026, and carries a CVSS v3.1 base score of 3.7 (Low) (Red Hat Advisory, Django Security Releases, Red Hat Bugzilla).

Technical details

The vulnerability is classified as CWE-362 (Concurrent Execution using Shared Resource with Improper Synchronization) and CWE-367 (Time-of-check Time-of-use Race Condition). When Django's file-system storage or file-based cache backends create new file system objects, they temporarily modify the process umask to control file permissions. In multi-threaded server environments, this temporary umask change is not thread-safe — a race window exists where another thread creating files concurrently inherits the modified umask, resulting in files being created with unintended (potentially overly permissive) permissions. Exploitation requires network access and high attack complexity, as the attacker must time concurrent requests to win the race condition (Django Security Releases, Red Hat Bugzilla).

Impact

Successful exploitation results in file system objects (stored files or cache files) being created with incorrect, potentially overly permissive permissions, leading to a low confidentiality impact. An attacker who can read the file system (e.g., a local user or another process on the same host) may gain unauthorized access to files that should have been restricted. There is no integrity or availability impact, and the scope is unchanged, limiting the blast radius to the affected Django application's file storage and cache directories (Red Hat Advisory, Django Security Releases).

Exploitability

No public proof-of-concept exploit code has been observed, and there is no evidence of active in-the-wild exploitation as of the time of disclosure. The EPSS score is approximately 0.025% (0.000250), reflecting a very low probability of exploitation in the near term. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. No threat actor attribution has been reported (Red Hat Advisory, Django Security Releases).

Mitigation and workarounds

Django has released patched versions addressing this vulnerability: 6.0.3 for the 6.0.x series, 5.2.12 for the 5.2.x series, and 4.2.29 for the 4.2.x series. Users of unsupported series (5.0.x, 4.1.x, 3.2.x) should upgrade to a supported and patched version. As an additional hardening measure, administrators should review and enforce strict OS-level access controls on Django's file storage and cache directories to limit exposure even if incorrect permissions are set. IBM has also issued an advisory for affected EDB Postgres AI Hybrid Management products (Django Security Releases, IBM Advisory, Django 6.0.3 Release Notes).

Community reactions

The Django project credited Tarek Nakkouch for responsibly reporting the issue and published a security advisory alongside the patched releases on March 3, 2026. Red Hat, SUSE, openSUSE, Mageia, Fedora, and Oracle all issued downstream advisories or updates in the weeks following disclosure, indicating broad ecosystem attention. Security news outlets such as SecurityOnline.info covered the release as part of Django's broader March 2026 security patch batch. Community reaction was measured given the low CVSS score and absence of active exploitation (Django Security Releases, Red Hat Advisory).

Additional resources

Linux Distribution fix status

Fix availability across major Linux distributions and their releases.

Debian

Fixed

bookworm

python-django

Affected

sid

python-django: 3:4.2.29-1

Fixed

trixie

python-django

Affected

Ubuntu

Unknown

bionic (esm-infra)

python-django

Unknown

devel

python-django

Unknown

focal (esm-infra)

python-django

Unknown

jammy

python-django

Unknown

noble

python-django

Unknown

resolute

python-django

Unknown

trusty (esm-infra-legacy)

python-django

Unknown

xenial (esm-infra-legacy)

python-django

Unknown

RHEL / CentOS

Unknown

Alpine

Fixed

v3.23

py3-django: 4.2.29-r0

Fixed

SourceThis report was generated using AI

Related Django vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-15830MEDIUM6.9
  • Django logoDjango
  • py3-django
NoYesAug 04, 2026
CVE-2026-53877MEDIUM6.3
  • Django logoDjango
  • openstack-horizon-2026.1
NoYesJul 07, 2026
CVE-2026-53878MEDIUM5.3
  • Django logoDjango
  • python-django5
NoYesJul 07, 2026
CVE-2026-48588LOW2.3
  • Django logoDjango
  • authentik-2026.5
NoYesJul 07, 2026
CVE-2026-8404LOW2.3
  • Django logoDjango
  • python311-Django
NoYesJun 03, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management