[Debian] High CVE: CVE-2023-23934/CVE-2023-25577 python-werkzeug: multiple CVEs

Bug #2030473 reported by Yue Tao
256
This bug affects 1 person
Affects Status Importance Assigned to Milestone
StarlingX
Fix Released
High
Wentao Zhang

Bug Description

CVE-2023-23934: https://nvd.nist.gov/vuln/detail/CVE-2023-23934

Werkzeug is a comprehensive WSGI web application library. Browsers may allow "nameless" cookies that look like `=value` instead of `key=value`. A vulnerable browser may allow a compromised application on an adjacent subdomain to exploit this to set a cookie like `=_Host-test=bad` for another subdomain. Werkzeug prior to 2.2.3 will parse the cookie `=_Host-test=bad` as __Host-test=bad`. If a Werkzeug application is running next to a vulnerable or malicious subdomain which sets such a cookie using a vulnerable browser, the Werkzeug application will see the bad cookie value but the valid cookie key. The issue is fixed in Werkzeug 2.2.3.

CVE-2023-25577: https://nvd.nist.gov/vuln/detail/CVE-2023-25577

Werkzeug is a comprehensive WSGI web application library. Prior to version 2.2.3, Werkzeug's multipart form data parser will parse an unlimited number of parts, including file parts. Parts can be a small amount of bytes, but each requires CPU time to parse and may use more memory as Python data. If a request can be made to an endpoint that accesses `request.data`, `request.form`, `request.files`, or `request.get_data(parse_form_data=False)`, it can cause unexpectedly high resource usage. This allows an attacker to cause a denial of service by sending crafted multipart data to an endpoint that will parse it. The amount of CPU time required can block worker processes from handling legitimate requests. The amount of RAM required can trigger an out of memory kill of the process. Unlimited file parts can use up memory and file handles. If many concurrent requests are sent continuously, this can exhaust or kill all available workers. Version 2.2.3 contains a patch for this issue.

Base Score: High

Reference:

['python3-werkzeug_1.0.1+dfsg1-2_all.deb===>python3-werkzeug_1.0.1+dfsg1-2+deb11u1_all.deb']
https://www.debian.org/security/2023/dsa-5470

CVE References

Wentao Zhang (wzhang4)
Changed in starlingx:
assignee: nobody → Wentao Zhang (wzhang4)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to tools (master)

Fix proposed to branch: master
Review: https://review.opendev.org/c/starlingx/tools/+/891932

Changed in starlingx:
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to tools (master)

Reviewed: https://review.opendev.org/c/starlingx/tools/+/891932
Committed: https://opendev.org/starlingx/tools/commit/de92778fcea6202fbe88ed09bb99be3170df5019
Submitter: "Zuul (22348)"
Branch: master

commit de92778fcea6202fbe88ed09bb99be3170df5019
Author: Wentao Zhang <email address hidden>
Date: Tue Aug 22 09:18:59 2023 +0800

    Debian: package : fix CVE-2023-23934/CVE-2023-25577

    Upgrade python3-werkzeug to 1.0.1+dfsg1-2+deb11u1

    Refer to:
    https://nvd.nist.gov/vuln/detail/CVE-2023-23934
    https://nvd.nist.gov/vuln/detail/CVE-2023-25577

    Test Plan:
    Pass: downloader
    Pass: build-pkgs --clean --all
    Pass: build-image
    Pass: boot

    Closes-bug: #2030473

    Signed-off-by: Wentao Zhang <email address hidden>
    Change-Id: I3c05b440400ec944defdd308862671fd915f27d3

Changed in starlingx:
status: In Progress → Fix Released
Ghada Khalil (gkhalil)
Changed in starlingx:
status: Fix Released → In Progress
Revision history for this message
Ghada Khalil (gkhalil) wrote :

Was re-opened by mistake; putting back to Fix Released

Changed in starlingx:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to gui (master)

Reviewed: https://review.opendev.org/c/starlingx/gui/+/894258
Committed: https://opendev.org/starlingx/gui/commit/b724f037f8ff15f182273a42ca733c0c624fbe05
Submitter: "Zuul (22348)"
Branch: master

commit b724f037f8ff15f182273a42ca733c0c624fbe05
Author: Wentao Zhang <email address hidden>
Date: Fri Sep 8 13:49:12 2023 +0800

    Fix the problem that horizon launch fails due to python3-django upgrade

    https://github.com/django/django/commit/fb4c55d9ec4bb812a7fb91fa20510d91645e411b
    This commit disables FileInput for uploading multiple files
    directly and introduces a new method as a replacement.
    the upgrade of python3-django from 2:2.2.28-1~deb11u1 to
    2:2.2.28-1~deb11u2 includes this commit.
    Refer to the method introduced in the commit to replace
    the previous usage.

    Test Plan
    PASS: build-pkgs -c -p starlingx-dashboard && build-image
    PASS: jenkins installation successfuly
    PASS: horizon.service can been successfully loaded and restarted
          with python3-django 2:2.2.28-1~deb11u2

    Closes-Bug: 2030473

    Depends-On: https://review.opendev.org/c/starlingx/tools/+/894257

    Change-Id: I5e07f3ec7e02090f1a04038c768a7e657131934e
    Signed-off-by: Wentao Zhang <email address hidden>

To post a comment you must log in.
This report contains Public Security information  
Everyone can see this security related information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.