PT-2022-20460 · Pypi · Waitress
Digitalresistor
+1
·
Published
2022-05-31
·
Updated
2025-05-17
·
CVE-2022-31015
CVSS v4.0
7.1
High
| Vector | AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
Name of the Vulnerable Software and Affected Versions
Waitress versions 2.1.0 through 2.1.1
Description
Waitress is a Web Server Gateway Interface server for Python 2 and 3. The issue arises when a thread closes a socket while the main thread is about to call
select(), leading to the main thread raising an exception that is not handled, causing the entire application to be killed. Users using Waitress behind a reverse proxy server are less likely to have issues if the reverse proxy always reads the full response.Recommendations
For Waitress versions 2.1.0 and 2.1.1, update to Waitress 2.1.2, which fixes the issue by no longer allowing the WSGI thread to close the socket, instead delegating this action to the main thread.
As a temporary workaround for users who cannot update immediately, consider using Waitress behind a reverse proxy server that always reads the full response to minimize the risk of application termination.
Exploit
Fix
Race Condition
Found an issue in the description? Have something to add? Feel free to write us 👾
Related Identifiers
Affected Products
Waitress