GHSA-8r99-h8j2-rw64
Twisted vulnerable to HTTP Request Smuggling Attacks
Impact
Twisted Web is vulnerable to request smuggling attacks:
- "When presented with two content-length headers, Twisted Web ignored the first header. When the second content-length was set to zero this caused Twisted Web to interpret the request body as a pipelined request. According to RFC 7230 Section 3.3.3#4, if a message is received with multiple content-length headers with differing value, then the server must reject the message with a 400 response." (Jake Miller of Bishop Fox Security)
- " When presented with a content-length and a chunked encoding header, the content-length took precedence and the remainder of the request body was interpreted by Twisted Web as a pipelined request. According to RFC 7230 Section 3.3.3#3, if a message with both content-length and chunked encoding is accepted, transfer-encoding overrides the content-length." (Jake Miller of Bishop Fox Security)
"Twisted should not allow BWS between the filed-name and colon." (ZeddYu Lu)closed in 9646- "Two CL header with different values is also not allowed." (ZeddYu Lu)
- "Only accept identity and chunked Transport-Encoding." (ZeddYu Lu)
Patches
https://github.com/twisted/twisted/commit/20c787a14a09e7cbd5dfd8df08ceff00d1fcc081 https://github.com/twisted/twisted/commit/4a7d22e490bb8ff836892cc99a1f54b85ccb0281
Workarounds
N/A
References
What each source reports
GitHub AdvisoriesNo score
Twisted vulnerable to HTTP Request Smuggling Attacks
Impact
Twisted Web is vulnerable to request smuggling attacks:
- "When presented with two content-length headers, Twisted Web ignored the first header. When the second content-length was set to zero this caused Twisted Web to interpret the request body as a pipelined request. According to RFC 7230 Section 3.3.3#4, if a message is received with multiple content-length headers with differing value, then the server must reject the message with a 400 response." (Jake Miller of Bishop Fox Security)
- " When presented with a content-length and a chunked encoding header, the content-length took precedence and the remainder of the request body was interpreted by Twisted Web as a pipelined request. According to RFC 7230 Section 3.3.3#3, if a message with both content-length and chunked encoding is accepted, transfer-encoding overrides the content-length." (Jake Miller of Bishop Fox Security)
"Twisted should not allow BWS between the filed-name and colon." (ZeddYu Lu)closed in 9646- "Two CL header with different values is also not allowed." (ZeddYu Lu)
- "Only accept identity and chunked Transport-Encoding." (ZeddYu Lu)
Patches
https://github.com/twisted/twisted/commit/20c787a14a09e7cbd5dfd8df08ceff00d1fcc081 https://github.com/twisted/twisted/commit/4a7d22e490bb8ff836892cc99a1f54b85ccb0281
Workarounds
N/A
References
- Record
GHSA-8r99-h8j2-rw64- Updated
- 2026-11-02
OSVNo score
Twisted vulnerable to HTTP Request Smuggling Attacks
Impact
Twisted Web is vulnerable to request smuggling attacks:
- "When presented with two content-length headers, Twisted Web ignored the first header. When the second content-length was set to zero this caused Twisted Web to interpret the request body as a pipelined request. According to RFC 7230 Section 3.3.3#4, if a message is received with multiple content-length headers with differing value, then the server must reject the message with a 400 response." (Jake Miller of Bishop Fox Security)
- " When presented with a content-length and a chunked encoding header, the content-length took precedence and the remainder of the request body was interpreted by Twisted Web as a pipelined request. According to RFC 7230 Section 3.3.3#3, if a message with both content-length and chunked encoding is accepted, transfer-encoding overrides the content-length." (Jake Miller of Bishop Fox Security)
"Twisted should not allow BWS between the filed-name and colon." (ZeddYu Lu)closed in 9646- "Two CL header with different values is also not allowed." (ZeddYu Lu)
- "Only accept identity and chunked Transport-Encoding." (ZeddYu Lu)
Patches
https://github.com/twisted/twisted/commit/20c787a14a09e7cbd5dfd8df08ceff00d1fcc081 https://github.com/twisted/twisted/commit/4a7d22e490bb8ff836892cc99a1f54b85ccb0281
Workarounds
N/A
References
- Record
GHSA-8r99-h8j2-rw64- Updated
- 2026-11-02
Affected packages
| Package | Affected | Fixed |
|---|---|---|
twistedPyPI | before 20.3.0 | 20.3.0 |
twistedPyPI | before 20.3.0, plus listed versions 1.0.11.0.31.0.41.0.51.0.6 Show 45 moreShow less1.0.71.1.01.1.11.2.010.0.010.1.010.2.011.0.011.1.012.0.012.1.012.2.012.3.013.0.013.1.013.2.014.0.014.0.114.0.215.0.015.1.015.2.015.2.115.3.015.4.015.5.016.0.016.1.016.1.116.2.016.3.016.3.116.3.216.4.016.4.116.5.016.5.0rc116.5.0rc216.6.016.6.0rc116.7.0rc116.7.0rc217.1.017.1.0rc117.5.0 | 20.3.0 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | GitHub Advisories, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
GHSA-8r99-h8j2-rw64 is a vulnerability with no CVSS score yet in twisted, published October 7, 2022. No source lists public exploit code. Fixed in twisted 20.3.0.
References
Left out here: 26 versions. The JSON record has them.