Description
An issue was discovered in Django 5.2 before 5.2.15 and 6.0 before 6.0.6. `django.middleware.cache.UpdateCacheMiddleware` in Django does not add `Authorization` to the `Vary` response header for requests bearing that header without `Cache-Control: public`, which allows remote attackers to read private cached responses via unauthenticated requests to the same URL. Earlier, unsupported Django series (such as 5.0.x, 4.1.x, and 3.2.x) were not evaluated and may also be affected. Django would like to thank Shai Berger for reporting this issue.
Problem types
CWE-524: Use of Cache Containing Sensitive Information
Product status
6.0 (python) before 6.0.6
6.0.6 (python)
5.2 (python) before 5.2.15
5.2.15 (python)
Timeline
| 2026-03-24: | Initial report received. |
| 2026-04-28: | Vulnerability confirmed. |
| 2026-06-03: | Security release issued. |
Credits
Shai Berger
Jacob Walls
Natalia Bidart
References
docs.djangoproject.com/en/dev/releases/security/ (Django security archive)
groups.google.com/g/django-announce (Django releases announcements)
www.djangoproject.com/weblog/2026/jun/03/security-releases/ (Django security releases issued: 6.0.6 and 5.2.15)