VDB

CVE-2021-41125

CVE-2021-41125 PUBLISHED CVSS 6.5 MEDIUM

Scrapy is a high-level web crawling and scraping framework for Python. If you use `HttpAuthMiddleware` (i.e. the `http_user` and `http_pass` spider attributes) for HTTP authentication, all requests will expose your credentials to the request target. This includes requests generated by Scrapy components, such as `robots.txt` requests sent by Scrapy when the `ROBOTSTXT_OBEY` setting is set to `True`, or as requests reached through redirects. Upgrade to Scrapy 2.5.1 and use the new `http_auth_domain` spider attribute to control which domains are allowed to receive the configured HTTP authentication credentials. If you are using Scrapy 1.8 or a lower version, and upgrading to Scrapy 2.5.1 is not an option, you may upgrade to Scrapy 1.8.1 instead. If you cannot upgrade, set your HTTP authentication credentials on a per-request basis, using for example the `w3lib.http.basic_auth_header` function to convert your credentials into a value that you can assign to the `Authorization` header of your request, instead of defining your credentials globally using `HttpAuthMiddleware`.

EPSS 0.25% · 48.7th percentile

Risk Scores

CVSS 3.1
6.5
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
EPSS Score
0.25%
48.7th percentile

Affected Products

VendorProductVersions
PyPIScrapy2.0.0, 0
scrapyscrapy0, < 1.8.1, 2.0.0
debiandebian_linux9.0

Timeline

  • Oct 6, 2021 CVE Published
  • Oct 7, 2021 EPSS Score
  • Dec 3, 2021 EPSS Score
  • Jan 6, 2022 EPSS Score
  • Feb 4, 2022 EPSS Score
  • Mar 26, 2022 EPSS Score
  • Apr 1, 2022 EPSS Score
  • May 22, 2022 EPSS Score
  • Jul 19, 2022 EPSS Score
  • Nov 9, 2022 EPSS Score
  • Jan 5, 2023 EPSS Score
  • Mar 3, 2023 EPSS Score
Open in Interactive Console →
$ Console Community · 100/wk Open console ›