GitHub Advisoryadvisory · PyPI

GHSA-4qqq-9vqf-3h3f Scrapy leaks the authorization header on same-domain but cross-origin redirects

MEDIUM Published 2024-05-14 Modified 2024-05-20 Official page ↗
Aliases
CVE-2024-1968
Ecosystem
PyPI
Packages
Scrapy
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Weaknesses
CWE-200
Reviewed
2024-05-14

Affected packages

• PyPI Scrapy: < 2.11.2 → fixed in 2.11.2

Description

Impact Since version 2.11.1, Scrapy drops the `Authorization` header when a request is redirected to a different domain. However, it keeps the header if the domain remains the same but the scheme (http/https) or the port change, all scenarios where the header should also be dropped. In the context of a man-in-the-middle attack, this could be used to get access to the value of that `Authorization` header Patches Upgrade to Scrapy 2.11.2. Workarounds There is no easy workaround for unpatched versions of Scrapy. You can replace the built-in redirect middlewares with custom ones patched for this issue, but you have to patch them yourself, manually. References This security issue was reported and fixed by @szarny at https://huntr.com/bounties/27f6a021-a891-446a-ada5-0226d619dd1a/.

Related

Alias · CVE (1)

  • CVE-2024-1968 In scrapy/scrapy, an issue was identified where the Authorization header is not removed during redirects that only change the scheme (e.g.,… vulnerability

Weakness · CWE (1)

  • CWE-200 Exposure of Sensitive Information to an Unauthorized Actor weakness

References