High severity · published Jul 29, 2024
CVE-2024-41671
twisted.web has disordered HTTP pipeline response
8.3
CVSS
0.9%
EPSS
No
On KEV
Description
Twisted is an event-based framework for internet applications, supporting Python 3.6+. The HTTP 1.0 and 1.1 server provided by twisted.web could process pipelined HTTP requests out-of-order, possibly resulting in information disclosure. This vulnerability is fixed in 24.7.0rc1.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
Low
Integrity
Low
Availability
Low
Scope
Changed
Exploitation
Is it being used?
Exploit prediction (EPSS)0.9% · higher than 58% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
TW
twisted · twisted
<= 24.3.0 · source: vendor, CISA
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2024-41671
CVE.org
https://www.cve.org/CVERecord?id=CVE-2024-41671
github.com
https://github.com/twisted/twisted/commit/046a164f89a0f08d3239ecebd750360f8914df33
github.com
https://github.com/twisted/twisted/commit/4a930de12fb67e88fefcb8822104152f42b27abc
github.com
https://github.com/twisted/twisted/security/advisories/GHSA-c8m8-j448-xjx7
lists.debian.org
https://lists.debian.org/debian-lts-announce/2024/11/msg00028.html
www.vicarius.io
https://www.vicarius.io/vsociety/posts/disordered-http-pipeline-in-twistedweb-cve-2024-4167
More from twisted
9.8
CVE-2020-10109
In Twisted Web through 19.10.0, there was an HTTP request splitting vulnerability
9.8
CVE-2020-10108
In Twisted Web through 19.10.0, there was an HTTP request splitting vulnerability
8.7
CVE-2026-115775
Twisted: Unauthenticated Remote Denial of Service in the Twisted words domish XML Element Stream via an Unbounded Element Tree
8.1
CVE-2022-24801
Twisted is an event-based framework for internet applications, supporting Python 3.6+
7.5
CVE-2026-115778
Twisted: Unauthenticated Remote Denial of Service in the Twisted conch Telnet Transport via an Unbounded Subnegotiation Buffer
