CVE-2023-30861
Flask Cookie Hijacking Vulnerability
Description
Flask is a lightweight WSGI web application framework. When all of the following conditions are met, a response containing data intended for one client may be cached and subsequently sent by the proxy to other clients. If the proxy also caches `Set-Cookie` headers, it may send one client's `session` cookie to other clients. The severity depends on the application's use of the session and the proxy's behavior regarding cookies. The risk depends on all these conditions being met. 1. The application must be hosted behind a caching proxy that does not strip cookies or ignore responses with cookies. 2. The application sets `session.permanent = True` 3. The application does not access or modify the session at any point during a request. 4. `SESSION_REFRESH_EACH_REQUEST` enabled (the default). 5. The application does not set a `Cache-Control` header to indicate that a page is private or should not be cached. This happens because vulnerable versions of Flask only set the `Vary: Cookie` header when the session is accessed or modified, not when it is refreshed (re-sent to update the expiration) without being accessed or modified. This issue has been fixed in versions 2.3.2 and 2.2.5.
INFO
Published Date :
May 2, 2023, 6:15 p.m.
Last Modified :
Aug. 20, 2023, 9:15 p.m.
Source :
[email protected]
Remotely Exploitable :
Yes !
Impact Score :
3.6
Exploitability Score :
3.9
Public PoC/Exploit Available at Github
CVE-2023-30861 has a 7 public PoC/Exploit
available at Github.
Go to the Public Exploits
tab to see the list.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2023-30861
.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
None
None
CMake Shell Perl C++ C Batchfile CSS Makefile M4 Python
Pulsecheck - Get current and historical vulnerability insights from the GItHub Advisory Database https://github.com/advisories/database, by checking the pulse of your project’s dependencies delivered in an easy-to-use CLI.
Python
None
Dockerfile Procfile Python HTML Mako
None
Python Dockerfile
Explaining how to exploit CVE-2023-30861
Prints a list of summarised Dependabot security alerts that are open, grouped by repository name.
Go Shell
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2023-30861
vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2023-30861
vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Modified by [email protected]
May. 14, 2024
Action Type Old Value New Value -
CVE Modified by [email protected]
Aug. 20, 2023
Action Type Old Value New Value Added Reference https://lists.debian.org/debian-lts-announce/2023/08/msg00024.html [No Types Assigned] -
CVE Modified by [email protected]
Aug. 18, 2023
Action Type Old Value New Value Added Reference https://security.netapp.com/advisory/ntap-20230818-0006/ [No Types Assigned] -
CVE Modified by [email protected]
Jun. 30, 2023
Action Type Old Value New Value Added Reference https://www.debian.org/security/2023/dsa-5442 [No Types Assigned] -
Initial Analysis by [email protected]
May. 10, 2023
Action Type Old Value New Value Added CVSS V3.1 NIST AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N Changed Reference Type https://github.com/pallets/flask/commit/70f906c51ce49c485f1d355703e9cc3386b1cc2b No Types Assigned https://github.com/pallets/flask/commit/70f906c51ce49c485f1d355703e9cc3386b1cc2b Patch Changed Reference Type https://github.com/pallets/flask/commit/afd63b16170b7c047f5758eb910c416511e9c965 No Types Assigned https://github.com/pallets/flask/commit/afd63b16170b7c047f5758eb910c416511e9c965 Patch Changed Reference Type https://github.com/pallets/flask/releases/tag/2.2.5 No Types Assigned https://github.com/pallets/flask/releases/tag/2.2.5 Release Notes Changed Reference Type https://github.com/pallets/flask/releases/tag/2.3.2 No Types Assigned https://github.com/pallets/flask/releases/tag/2.3.2 Release Notes Changed Reference Type https://github.com/pallets/flask/security/advisories/GHSA-m2qf-hxjv-5gpq No Types Assigned https://github.com/pallets/flask/security/advisories/GHSA-m2qf-hxjv-5gpq Vendor Advisory Added CPE Configuration OR *cpe:2.3:a:palletsprojects:flask:*:*:*:*:*:*:*:* versions up to (excluding) 2.2.5 *cpe:2.3:a:palletsprojects:flask:*:*:*:*:*:*:*:* versions from (including) 2.3.0 up to (excluding) 2.3.2
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2023-30861
is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2023-30861
weaknesses.
Exploit Prediction
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days.
0.24 }} -0.01%
score
0.62622
percentile