Bug 1097500 (CVE-2014-1418) - CVE-2014-1418 Django: cached data possibly served to the wrong session
Summary: CVE-2014-1418 Django: cached data possibly served to the wrong session
Keywords:
Status: CLOSED WONTFIX
Alias: CVE-2014-1418
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
URL:
Whiteboard:
Depends On: 1097935 1097936 1097937
Blocks: 1097509
TreeView+ depends on / blocked
 
Reported: 2014-05-14 03:17 UTC by Murray McAllister
Modified: 2023-05-12 03:43 UTC (History)
16 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-01-14 05:31:37 UTC
Embargoed:


Attachments (Terms of Use)
upstream fix (5.70 KB, patch)
2014-05-14 03:20 UTC, Murray McAllister
no flags Details | Diff
fix for 1.4 versions (4.66 KB, patch)
2014-05-14 03:20 UTC, Murray McAllister
no flags Details | Diff
fix for 1.5 versions (5.29 KB, patch)
2014-05-14 03:21 UTC, Murray McAllister
no flags Details | Diff
fix for 1.6 versions (5.27 KB, patch)
2014-05-14 03:21 UTC, Murray McAllister
no flags Details | Diff

Description Murray McAllister 2014-05-14 03:17:22 UTC
It was reported that, in certain situations, cached data in Django could be served to a different session, or to a user with no session at all. The original report from upstream:

""
In certain situations, Django may allow caches to store private data
related to a particular session and then serve that data to requests
with a different session, or no session at all. This can both lead to
information disclosure, and can be a vector for cache poisoning.

When using Django sessions, Django will set a ``Vary: Cookie`` header
to ensure caches do not serve cached data to requests from other
sessions. However, older versions of Internet Explorer (most likely
only Internet Explorer 6, and Internet Explorer 7 if run on Windows XP
or Windows Server 2003) are unable to handle the ``Vary`` header in
combination with many content types. Therefore, Django would remove
the header if the request was made by Internet Explorer.

To remedy this, the special behavior for these older Internet
Explorer versions has been removed, and the ``Vary`` header is no
longer stripped from the response. In addition, modifications to the
``Cache-Control`` header for all Internet Explorer requests with a
``Content-Disposition`` header, have also been removed as they were
found to have similar issues.
""

This issue affects Django versions 1.4, 1.5, 1.6, and 1.7. It has been fixed in versions 1.4.13, 1.5.8, 1.6.5, and 1.7 beta 4.

Acknowledgements:

Red Hat would like to thank the upstream Django project for reporting this issue. Upstream acknowledges Michael Nelson, Natalia Bidart, and James Westby as the original reporters.

Comment 2 Murray McAllister 2014-05-14 03:20:07 UTC
Created attachment 895332 [details]
upstream fix

Comment 3 Murray McAllister 2014-05-14 03:20:38 UTC
Created attachment 895333 [details]
fix for 1.4 versions

Comment 4 Murray McAllister 2014-05-14 03:21:07 UTC
Created attachment 895334 [details]
fix for 1.5 versions

Comment 5 Murray McAllister 2014-05-14 03:21:40 UTC
Created attachment 895335 [details]
fix for 1.6 versions

Comment 6 Vincent Danen 2014-05-14 22:05:35 UTC
External Reference:

https://www.djangoproject.com/weblog/2014/may/14/security-releases-issued/

Comment 7 Vincent Danen 2014-05-14 22:12:30 UTC
Created Django14 tracking bugs for this issue:

Affects: epel-6 [bug 1097937]

Comment 8 Vincent Danen 2014-05-14 22:12:33 UTC
Created python-django14 tracking bugs for this issue:

Affects: fedora-all [bug 1097936]

Comment 9 Vincent Danen 2014-05-14 22:12:36 UTC
Created python-django tracking bugs for this issue:

Affects: fedora-all [bug 1097935]

Comment 10 Fedora Update System 2014-05-24 18:00:51 UTC
Django14-1.4.13-1.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 11 Fedora Update System 2014-05-26 23:57:06 UTC
python-django14-1.4.13-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 12 Fedora Update System 2014-05-26 23:57:28 UTC
python-django-1.5.8-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 13 Fedora Update System 2014-05-26 23:58:07 UTC
python-django15-1.5.8-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2014-05-26 23:59:23 UTC
python-django-1.6.5-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.