DescriptionWaitress 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.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, bugtraq, EDB, Metasploit, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, Mageia, GitHub code/issues, web search, more)
Debian Bugs1012315

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
waitress (PTS)stretch1.0.1-1fixed
stretch (security)1.0.1-1+deb9u1fixed
buster (security)1.2.0~b2-2+deb10u1vulnerable
bullseye (security)1.4.4-1.1+deb11u1vulnerable
bookworm, sid2.1.1-2vulnerable

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
waitresssourcestretch(not affected)


[stretch] - waitress <not-affected> (Vulnerable code not present) (v2.1.2)
double check, the problem seems to be introduced in version 2.1.0 only

Search for package or bug name: Reporting problems