Skip to content

Flask-2.2.2-py3-none-any.whl: 3 vulnerabilities (highest severity is: 7.5) #23

@mend-bolt-for-github

Description

@mend-bolt-for-github
Vulnerable Library - Flask-2.2.2-py3-none-any.whl

A simple framework for building complex web applications.

Library home page: https://files.pythonhosted.org/packages/0f/43/15f4f9ab225b0b25352412e8daa3d0e3d135fcf5e127070c74c3632c8b4c/Flask-2.2.2-py3-none-any.whl

Path to dependency file: /requirements.txt

Path to vulnerable library: /tmp/ws-ua_20251123120822_PATZQW/python_RBFPHF/202511231210201/env/lib/python3.9/site-packages/Flask-2.2.2.dist-info

Found in HEAD commit: 0f1cc4f79fdab9e4d90aa9caf963ea2e271c0183

Vulnerabilities

Vulnerability Severity CVSS Dependency Type Fixed in (Flask version) Remediation Possible**
CVE-2023-30861 High 7.5 Flask-2.2.2-py3-none-any.whl Direct Flask - 2.3.2,Flask - 2.2.5
CVE-2026-21860 Medium 5.3 werkzeug-3.1.3-py3-none-any.whl Transitive N/A*
CVE-2025-66221 Medium 5.3 werkzeug-3.1.3-py3-none-any.whl Transitive 2.2.3

*For some transitive vulnerabilities, there is no version of direct dependency with a fix. Check the "Details" section below to see if there is a version of transitive dependency where vulnerability is fixed.

**In some cases, Remediation PR cannot be created automatically for a vulnerability despite the availability of remediation

Details

CVE-2023-30861

Vulnerable Library - Flask-2.2.2-py3-none-any.whl

A simple framework for building complex web applications.

Library home page: https://files.pythonhosted.org/packages/0f/43/15f4f9ab225b0b25352412e8daa3d0e3d135fcf5e127070c74c3632c8b4c/Flask-2.2.2-py3-none-any.whl

Path to dependency file: /requirements.txt

Path to vulnerable library: /tmp/ws-ua_20251123120822_PATZQW/python_RBFPHF/202511231210201/env/lib/python3.9/site-packages/Flask-2.2.2.dist-info

Dependency Hierarchy:

  • Flask-2.2.2-py3-none-any.whl (Vulnerable Library)

Found in HEAD commit: 0f1cc4f79fdab9e4d90aa9caf963ea2e271c0183

Found in base branch: main

Vulnerability Details

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.
    Mend Note: The description of this vulnerability differs from MITRE.

Publish Date: 2023-05-02

URL: CVE-2023-30861

CVSS 3 Score Details (7.5)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: High
    • Integrity Impact: None
    • Availability Impact: None

For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: GHSA-m2qf-hxjv-5gpq

Release Date: 2023-05-02

Fix Resolution: Flask - 2.3.2,Flask - 2.2.5

Step up your Open Source Security Game with Mend here

CVE-2026-21860

Vulnerable Library - werkzeug-3.1.3-py3-none-any.whl

The comprehensive WSGI web application library.

Library home page: https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl

Path to dependency file: /requirements.txt

Path to vulnerable library: /tmp/ws-ua_20251123120822_PATZQW/python_RBFPHF/202511231210201/env/lib/python3.9/site-packages/werkzeug-3.1.3.dist-info

Dependency Hierarchy:

  • Flask-2.2.2-py3-none-any.whl (Root Library)
    • werkzeug-3.1.3-py3-none-any.whl (Vulnerable Library)

Found in HEAD commit: 0f1cc4f79fdab9e4d90aa9caf963ea2e271c0183

Found in base branch: main

Vulnerability Details

Werkzeug is a comprehensive WSGI web application library. Prior to version 3.1.5, Werkzeug's safe_join function allows path segments with Windows device names that have file extensions or trailing spaces. On Windows, there are special device names such as CON, AUX, etc that are implicitly present and readable in every directory. Windows still accepts them with any file extension, such as CON.txt, or trailing spaces such as CON. This issue has been patched in version 3.1.5.

Publish Date: 2026-01-08

URL: CVE-2026-21860

CVSS 3 Score Details (5.3)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: None
    • Integrity Impact: None
    • Availability Impact: Low

For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: GHSA-87hc-h4r5-73f7

Release Date: 2026-01-08

Fix Resolution: https://github.com/pallets/werkzeug.git - 3.1.5,werkzeug - 3.1.5

Step up your Open Source Security Game with Mend here

CVE-2025-66221

Vulnerable Library - werkzeug-3.1.3-py3-none-any.whl

The comprehensive WSGI web application library.

Library home page: https://files.pythonhosted.org/packages/52/24/ab44c871b0f07f491e5d2ad12c9bd7358e527510618cb1b803a88e986db1/werkzeug-3.1.3-py3-none-any.whl

Path to dependency file: /requirements.txt

Path to vulnerable library: /tmp/ws-ua_20251123120822_PATZQW/python_RBFPHF/202511231210201/env/lib/python3.9/site-packages/werkzeug-3.1.3.dist-info

Dependency Hierarchy:

  • Flask-2.2.2-py3-none-any.whl (Root Library)
    • werkzeug-3.1.3-py3-none-any.whl (Vulnerable Library)

Found in HEAD commit: 0f1cc4f79fdab9e4d90aa9caf963ea2e271c0183

Found in base branch: main

Vulnerability Details

Werkzeug is a comprehensive WSGI web application library. Prior to version 3.1.4, Werkzeug's safe_join function allows path segments with Windows device names. On Windows, there are special device names such as CON, AUX, etc that are implicitly present and readable in every directory. send_from_directory uses safe_join to safely serve files at user-specified paths under a directory. If the application is running on Windows, and the requested path ends with a special device name, the file will be opened successfully, but reading will hang indefinitely. This issue has been patched in version 3.1.4.

Publish Date: 2025-11-29

URL: CVE-2025-66221

CVSS 3 Score Details (5.3)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: Low
    • Privileges Required: None
    • User Interaction: None
    • Scope: Unchanged
  • Impact Metrics:
    • Confidentiality Impact: None
    • Integrity Impact: None
    • Availability Impact: Low

For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Release Date: 2025-11-29

Fix Resolution (Werkzeug): 3.1.4

Direct dependency fix Resolution (Flask): 2.2.3

Step up your Open Source Security Game with Mend here

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions