CVE-2023-25577
published 2023-02-14CVE-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…
PriorityP341high7.5CVSS 3.1
AVNACLPRNUINSUCNINAH
EPSS
1.42%
69.5th percentile
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.
Affected
7 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| debian | python-werkzeug | < python-werkzeug 2.2.2-3 (bookworm) | python-werkzeug 2.2.2-3 (bookworm) |
| msrc | azl3_python-tensorboard_2.16.2-6_on_azure_linux_3.0 | — | — |
| msrc | cbl2_python-tensorboard_2.11.0-3_on_cbl_mariner_2.0 | — | — |
| msrc | cbl2_python-werkzeug_2.0.3-2_on_cbl_mariner_2.0 | — | — |
| pallets | werkzeug | < 2.2.3 | 2.2.3 |
| palletsprojects | werkzeug | < 2.2.3 | 2.2.3 |
| palletsprojects | werkzeug | >= 0 < 2.2.3 | 2.2.3 |
CVSS provenance
nvdv3.17.5HIGHCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
osv7.5HIGH
vendor_debian7.5HIGH
vendor_msrc7.5HIGH
vendor_oracle7.5HIGH
vendor_redhat7.5HIGH
vendor_ubuntu2.6LOW
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
Ubuntu
Werkzeug vulnerabilities
vendor_ubuntu·2023-06-20·CVSS 2.6
CVE-2023-25577 [LOW] Werkzeug vulnerabilities
Title: Werkzeug vulnerabilities
Summary: Several security issues were fixed in Werkzeug.
USN-5948-1 fixed vulnerabilities in Werkzeug. This update provides the
corresponding updates for Ubuntu 23.04.
Original advisory details:
It was discovered that Werkzeug did not properly handle the parsing of
nameless cookies. A remote attacker could possibly use this issue to
shadow other cookies. (CVE-2023-23934)
It was discovered that Werkzeug could be made to process unlimited number
of multipart form data parts. A remote attacker could possibly use this
issue to cause Werkzeug to consume resources, leading to a denial of
service. (CVE-2023-25577)
Instructions: In general, a standard system update will make all the necessary changes.
Oracle
Oracle Oracle Communications Risk Matrix: Policy (Werkzeug) — CVE-2023-25577
vendor_oracle·2023-04-15·CVSS 7.5
CVE-2023-25577 [HIGH] Oracle Oracle Communications Risk Matrix: Policy (Werkzeug) — CVE-2023-25577
Oracle Oracle Communications Risk Matrix: Policy (Werkzeug) vulnerability
CVE: CVE-2023-25577
CVSS: 7.5
Protocol: HTTPS
Remote exploit: Yes
Affected versions: Network
Advisory: cpuapr2023 (APR 2023)
Ubuntu
Werkzeug vulnerabilities
vendor_ubuntu·2023-03-13·CVSS 2.6
CVE-2023-23934 [LOW] Werkzeug vulnerabilities
Title: Werkzeug vulnerabilities
Summary: Several security issues were fixed in Werkzeug.
It was discovered that Werkzeug did not properly handle the parsing of
nameless cookies. A remote attacker could possibly use this issue to
shadow other cookies. (CVE-2023-23934)
It was discovered that Werkzeug could be made to process unlimited number
of multipart form data parts. A remote attacker could possibly use this
issue to cause Werkzeug to consume resources, leading to a denial of
service. (CVE-2023-25577)
Instructions: In general, a standard system update will make all the necessary changes.
Red Hat
python-werkzeug: high resource usage when parsing multipart form data with many fields
vendor_redhat·2023-02-14·CVSS 7.5
CVE-2023-25577 [HIGH] CWE-770 python-werkzeug: high resource usage when parsing multipart form data with many fields
python-werkzeug: high resource usage when parsing multipart form data with many fields
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
Microsoft
Werkzeug may allow high resource usage when parsing multipart form data with many fields
vendor_msrc·2023-02-14·CVSS 7.5
CVE-2023-25577 [HIGH] CWE-770 Werkzeug may allow high resource usage when parsing multipart form data with many fields
Werkzeug may allow high resource usage when parsing multipart form data with many fields
FAQ: Is Azure Linux the only Microsoft product that includes this open-source library and is therefore potentially affected by this vulnerability?
One of the main benefits to our customers who choose to use the Azure Linux distro is the commitment to keep it up to date with the most recent and most secure versions of the open source libraries with which the distro is composed. Microsoft is committed to transparency in this work which is why we began publishing CSAF/VEX in October 2025. See this blog post for more information. If impact to additional products is identified, we will update the CVE to reflect this.
Mariner: Mariner
GitHub_M: GitHub_M
Customer Action Required: Yes
Remediation: CBL-Mar
Debian
CVE-2023-25577: python-werkzeug - Werkzeug is a comprehensive WSGI web application library. Prior to version 2.2.3...
vendor_debian·2023·CVSS 7.5
CVE-2023-25577 [HIGH] CVE-2023-25577: python-werkzeug - Werkzeug is a comprehensive WSGI web application library. Prior to version 2.2.3...
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
OSV
python-werkzeug vulnerabilities
osv·2023-03-13·CVSS 3.5
CVE-2023-23934 [LOW] python-werkzeug vulnerabilities
python-werkzeug vulnerabilities
It was discovered that Werkzeug did not properly handle the parsing of
nameless cookies. A remote attacker could possibly use this issue to
shadow other cookies. (CVE-2023-23934)
It was discovered that Werkzeug could be made to process unlimited number
of multipart form data parts. A remote attacker could possibly use this
issue to cause Werkzeug to consume resources, leading to a denial of
service. (CVE-2023-25577)
OSV
High resource usage when parsing multipart form data with many fields
osv·2023-02-15
CVE-2023-25577 [HIGH] High resource usage when parsing multipart form data with many fields
High resource usage when parsing multipart form data with many fields
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
GHSA
High resource usage when parsing multipart form data with many fields
ghsa·2023-02-15
CVE-2023-25577 [HIGH] CWE-400 High resource usage when parsing multipart form data with many fields
High resource usage when parsing multipart form data with many fields
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
OSV
CVE-2023-25577: Werkzeug is a comprehensive WSGI web application library
osv·2023-02-14·CVSS 7.5
CVE-2023-25577 [HIGH] CVE-2023-25577: Werkzeug is a comprehensive WSGI web application library
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
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
https://github.com/pallets/werkzeug/commit/517cac5a804e8c4dc4ed038bb20dacd038e7a9f1https://github.com/pallets/werkzeug/releases/tag/2.2.3https://github.com/pallets/werkzeug/security/advisories/GHSA-xg9f-g7g7-2323https://security.netapp.com/advisory/ntap-20230818-0003/https://www.debian.org/security/2023/dsa-5470https://github.com/pallets/werkzeug/commit/517cac5a804e8c4dc4ed038bb20dacd038e7a9f1https://github.com/pallets/werkzeug/releases/tag/2.2.3https://github.com/pallets/werkzeug/security/advisories/GHSA-xg9f-g7g7-2323https://security.netapp.com/advisory/ntap-20230818-0003/https://www.debian.org/security/2023/dsa-5470
2023-02-14
Published