CVE-2024-3574High· 7.5▾ TwilightScrapy authorization header leakage on cross-domain redirect
▾ Twilight zone — High severity, or a signal on a lesser flaw
impact 41.3 · likelihood 0.1 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Exploit-prediction probability, daily snapshots since Jul 8.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via OSV
Last analysed / modified upstream
0.6%
0.6% → 0.6%
When you send a request with the Authorization header to one domain, and the response asks to redirect to a different domain, Scrapy’s built-in redirect middleware creates a follow-up redirect request that keeps the original Authorization header, leaking its content to that second domain.
The right behavior would be to drop the Authorization header instead, in this scenario.
Upgrade to Scrapy 2.11.1.
If you are using Scrapy 1.8 or a lower version, and upgrading to Scrapy 2.11.1 is not an option, you may upgrade to Scrapy 1.8.4 instead.
If you cannot upgrade, make sure that you are not using the Authentication header, either directly or through some third-party plugin.
If you need to use that header in some requests, add "dont_redirect": True to the request.meta dictionary of those requests to disable following redirects for them.
If you need to keep (same domain) redirect support on those requests, make sure you trust the target website not to redirect your requests to a different domain.
This security issue was reported by @ranjit-git through huntr.com.
scrapy >= 2, < 2.11.1scrapy < 1.8.4Upgrade to a patched release:
scrapy 2.11.1scrapy 1.8.4Connected by shared product, vendor, weakness, or advisory.
CVE-2026-84366High· 7.4Scrapy is a high-level web crawling and scraping framework for Python
CVE-2021-41125Medium· 5.7Scrapy HTTP authentication credentials potentially leaked to target websites
CVE-2024-3572High· 7.5Scrapy decompression bomb vulnerability