High, CVSS 7.1PyPIAmendedPublished
Unsafe handling of user-specified cookies in treq
CVE-2022-23607 · GHSA-fhpf-pp6p-55qc
- Affected
- PyPI treq < 22.1.0
- Fixed in
- 22.1.0· Vendor fix available
- Issue
- Impact Treq's request methods (treq.get, treq.post, HTTPClient.request, HTTPClient.get, etc.) accept cookies as a dictionary, for example: 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. Patches 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. Workarounds Instead of passing a dictionary as the cookies argument, pass a http.cookiejar.CookieJar instance with properly domain- and scheme-scoped cookies in it: References Originally reported at huntr.dev A related issue in the handling of HTTP basic authentication was addressed in Twisted 22.1 (GHSA-92x2-jw7w-xvvx, CVE-2022-21712).
Recommended action: Upgrade to 22.1.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.