CVE-2022-31015
mediumpriority · track · 25EPSS 0.015 · 74 %ileEUUSEPSS · scored 2026-10-27
Waitress is a Web Server Gateway Interface server for Python 2 and 3. Waitress versions 2.1.0 and 2.1.1 may terminate early due to a thread closing a socket while the main thread is about to call select(). This will lead to the main thread raising an exception that is not handled and then causing the entire application to be killed. This issue has been fixed in Waitress 2.1.2 by no longer allowing the WSGI thread to close the socket. Instead, that is always delegated to the main thread. There is no work-around for this issue. However, users using waitress behind a reverse proxy server are less likely to have issues if the reverse proxy always reads the full response.
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode
ssvc
A stakeholder decision — act, attend, or track — from exploitation and impact.
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (3)
Products and version ranges known to be affected.
advisories (2)
Vendor and ecosystem advisories describing this.
- GHSA-f5x9-8jwc-25rwUncaught Exception (due to a data race) leads to process termination in Waitress2022-06-02ghsa · osvUS
### Impact Waitress may terminate early due to a thread closing a socket while the main thread is about to call select(). This will lead to the main thread raising an exception that is not handled and then causing the entire application to be killed. ### Patches This issue has been fixed in Waitress 2.1.2 by no longer allowing the WSGI thread to close the socket, instead it is always delegated to the main thread. ### Workarounds There is no work-around, however users using waitress behind a reverse proxy server are less likely to have issues if the reverse proxy always reads the full response. ### For more information If you have any questions or comments about this advisory: * Open an issue in https://github.com/Pylons/waitress/issues (if not sensitive or security related) * email the Pylons Security mailing list: [pylons-project-security@googlegroups.com](mailto:pylons-project-security@googlegroups.com) (if security related)
- PYSEC-2022-2052022-05-31vendor · osvUS
Waitress is a Web Server Gateway Interface server for Python 2 and 3. Waitress versions 2.1.0 and 2.1.1 may terminate early due to a thread closing a socket while the main thread is about to call select(). This will lead to the main thread raising an exception that is not handled and then causing the entire application to be killed. This issue has been fixed in Waitress 2.1.2 by no longer allowing the WSGI thread to close the socket. Instead, that is always delegated to the main thread. There is no work-around for this issue. However, users using waitress behind a reverse proxy server are less likely to have issues if the reverse proxy always reads the full response.
also known as (6)
Other names and identifiers for this entity.
sources
Which sources assert this record, and when.
references (15)
External citations — patches, advisories, analysis.
- https://access.redhat.com/security/cve/cve-2022-31015cnnvd
- https://cxsecurity.com/cveshow/CVE-2022-31015/cnnvd
- https://github.com/Pylons/waitress/commit/4f6789b035610e0552738cdc4b35ca809a592d48cnnvd
- https://github.com/Pylons/waitress/issues/374cnnvd
- https://github.com/Pylons/waitress/pull/377cnnvd
- https://github.com/Pylons/waitress/security/advisories/GHSA-f5x9-8jwc-25rwcnnvd
- https://www.cybersecurity-help.cz/vdb/SB2022060713cnnvd
- https://github.com/Pylons/waitress/commit/4f6789b035610e0552738cdc4b35ca809a592d48enisa_euvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan