Unsafe handling of user-specified cookies in treq
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Information disclosure, Security bypass, Spoofing
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-200, CWE-425 and CWE-601.
Summary
treq is an HTTP library inspired by requests but written on top of Twisted's Agents. Treq's request methods (`treq.get`, `treq.post`, etc.) and `treq.client.HTTPClient` constructor accept cookies as a dictionary. Such cookies are not bound to a single domain, and are therefore sent to *every* domain ("supercookies"). This can potentially cause sensitive information to leak upon an HTTP redirect to a different domain., e.g. should `https://example.com` redirect to `http://cloudstorageprovider.com` the latter will receive the cookie `session`. Treq 2021.1.0 and later bind cookies given to request methods (`treq.request`, `treq.get`, `HTTPClient.request`, `HTTPClient.get`, etc.) to the origin of the *url* parameter. Users are advised to upgrade. For users unable to upgrade Instead of passing a dictionary as the *cookies* argument, pass a `http.cookiejar.CookieJar` instance with properly domain- and scheme-scoped cookies in it.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| twisted | treq | before 22.1.0 | 22.1.0 | Patch available | CNA |
| — | treq (PyPI) | before 22.1.0 | 22.1.0 | Patch available | GHSA-fhpf-pp6p-55qc |
- treq Vendortwisted Affected before 22.1.0 Fixed in 22.1.0 Patch available CNA
- treq (PyPI) Vendor— Affected before 22.1.0 Fixed in 22.1.0 Patch available GHSA-fhpf-pp6p-55qc
CPE configurations NVD · 2
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:twistedmatrix:treq:*:*:*:*:*:*:*:* | 21.1.0 to before 22.1.0 | Vulnerable | Twistedmatrix |
| cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:* | 9.0 | Vulnerable | Debian |
- cpe:2.3:a:twistedmatrix:treq:*:*:*:*:*:*:*:* Versions 21.1.0 to before 22.1.0 Vulnerable ·Twistedmatrix
- cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:* Versions 9.0 Vulnerable ·Debian
Remediation
- Fix · CNA treq (twisted) Fixed in 22.1.0
- Fix · GHSA-fhpf-pp6p-55qc treq (PyPI) Fixed in 22.1.0 Advisory →
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2022-23607
- 2026-10-03 Alias added: GHSA-fhpf-pp6p-55qc
References
Advisory 3
Other 5
- https://github.com/twisted/treq/commit/1da6022cc880bbcff59321abe02bf8498b89efb2
- https://github.com/pypa/advisory-database/tree/main/vulns/treq/PYSEC-2022-26.yaml
- https://github.com/twisted/treq
- https://github.com/twisted/treq/releases/tag/release-22.1.0
- https://huntr.dev/bounties/3c9204fc-a3d1-4441-8599-924c5f57e7ae/?token=06d930e37046c914bcb037e85cc227dc7b510b475989fc69837566562ba899277d46b0fb4b1e21cdcb6ddc1b7d9b1ded632cf3a3551ecb89afca16a63b34641284b50479d5195bba2ac09b116f3dd4fad27f54404c2de922c05c8c8b744aec27bb4d4d198cb8b3abf479af0c2d5fbaa10412da7922594ac3eb39
More twisted vulnerabilities
- TI-2026-79985 Unauthenticated memory exhaustion in Twisted domish XML parser CVSS 4.0HIGH 8.7
- TI-2026-30612 Twisted: Denial of Service (DoS) in twisted.names via Crafted DNS Compression Pointer Chains CVSS 3.1HIGH 7.5
- TI-2022-06090 Buffer Overflow in Twisted CVSS 3.1HIGH 7.5
- TI-2024-27732 twisted.web has disordered HTTP pipeline response CVSS 3.1HIGH 8.3
- TI-2024-27854 HTML injection in HTTP redirect body CVSS 3.1MEDIUM 6.1
- TI-2026-79989 HTTP request smuggling in Twisted web via bare CR or LF in headers CVSS 3.1MEDIUM 5.4
Sources
- CVE-2022-23607 · CVE Program
- CVE-2022-23607 · NVD
- FIRST EPSS
- GHSA-fhpf-pp6p-55qc · GitHub Advisory Database · CC BY 4.0
- CVE-2022-23607 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences