Every CVE Search/ Get API key

CVE-2022-0577

Exposure of Sensitive Information to an Unauthorized Actor in scrapy/scrapy

8.8 HighFix available

Exposure of Sensitive Information to an Unauthorized Actor in GitHub repository scrapy/scrapy prior to 2.6.1.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

1.23%Up 0.3 points since Mar 2, 2022
90%50%10%1%

What each source reports

CVE List Score used 8.8

Exposure of Sensitive Information to an Unauthorized Actor in scrapy/scrapy

Exposure of Sensitive Information to an Unauthorized Actor in GitHub repository scrapy/scrapy prior to 2.6.1.

Record
CVE-2022-0577
CVSS 3.0
8.8 HighCVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-200
Updated
2026-11-02
EUVDEUVD-2022-0275 8.8

Exposure of Sensitive Information to an Unauthorized Actor in GitHub repository scrapy/scrapy prior to 2.6.1.

Record
EUVD-2022-0275
CVSS 3.0
8.8 HighCVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-03
GitHub AdvisoriesGHSA-cjvr-mfj7-j4j8 6.5

Incorrect Authorization and Exposure of Sensitive Information to an Unauthorized Actor in scrapy

Impact

If you manually define cookies on a Request object, and that Request object gets a redirect response, the new Request object scheduled to follow the redirect keeps those user-defined cookies, regardless of the target domain.

Patches

Upgrade to Scrapy 2.6.0, which resets cookies when creating Request objects to follow redirects¹, and drops the Cookie header if manually-defined if the redirect target URL domain name does not match the source URL domain name².

If you are using Scrapy 1.8 or a lower version, and upgrading to Scrapy 2.6.0 is not an option, you may upgrade to Scrapy 1.8.2 instead.

¹ At that point the original, user-set cookies have been processed by the cookie middleware into the global or request-specific cookiejar, with their domain restricted to the domain of the original URL, so when the cookie middleware processes the new (redirect) request it will incorporate those cookies into the new request as long as the domain of the new request matches the domain of the original request.

² This prevents cookie leaks to unintended domains even if the cookies middleware is not used.

Workarounds

If you cannot upgrade, set your cookies using a list of dictionaries instead of a single dictionary, as described in the Request documentation, and set the right domain for each cookie.

Alternatively, you can disable cookies altogether, or limit target domains to domains that you trust with all your user-set cookies.

References

For more information

If you have any questions or comments about this advisory:

Record
GHSA-cjvr-mfj7-j4j8
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-200, CWE-863
Updated
2026-11-02
NVD 6.5

Exposure of Sensitive Information to an Unauthorized Actor in GitHub repository scrapy/scrapy prior to 2.6.1.

Record
CVE-2022-0577
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
CVSS 3.0
8.8 HighCVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
4.0 MediumAV:N/AC:L/Au:S/C:P/I:N/A:N
Weakness
CWE-200, CWE-863
Updated
2026-11-02
OSV 8.8

Exposure of Sensitive Information to an Unauthorized Actor in scrapy/scrapy

Exposure of Sensitive Information to an Unauthorized Actor in GitHub repository scrapy/scrapy prior to 2.6.1.

Record
CVE-2022-0577
CVSS 3.0
8.8 HighCVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-200
Updated
2026-11-02
OSVDEBIAN-CVE-2022-0577 6.5

Exposure of Sensitive Information to an Unauthorized Actor in GitHub repository scrapy/scrapy prior to 2.6.1.

Record
DEBIAN-CVE-2022-0577
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-03
Show 5 moreShow less
OSVGHSA-cjvr-mfj7-j4j8 6.5

Incorrect Authorization and Exposure of Sensitive Information to an Unauthorized Actor in scrapy

Impact

If you manually define cookies on a Request object, and that Request object gets a redirect response, the new Request object scheduled to follow the redirect keeps those user-defined cookies, regardless of the target domain.

Patches

Upgrade to Scrapy 2.6.0, which resets cookies when creating Request objects to follow redirects¹, and drops the Cookie header if manually-defined if the redirect target URL domain name does not match the source URL domain name².

If you are using Scrapy 1.8 or a lower version, and upgrading to Scrapy 2.6.0 is not an option, you may upgrade to Scrapy 1.8.2 instead.

¹ At that point the original, user-set cookies have been processed by the cookie middleware into the global or request-specific cookiejar, with their domain restricted to the domain of the original URL, so when the cookie middleware processes the new (redirect) request it will incorporate those cookies into the new request as long as the domain of the new request matches the domain of the original request.

² This prevents cookie leaks to unintended domains even if the cookies middleware is not used.

Workarounds

If you cannot upgrade, set your cookies using a list of dictionaries instead of a single dictionary, as described in the Request documentation, and set the right domain for each cookie.

Alternatively, you can disable cookies altogether, or limit target domains to domains that you trust with all your user-set cookies.

References

For more information

If you have any questions or comments about this advisory:

Record
GHSA-cjvr-mfj7-j4j8
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-200, CWE-863
Updated
2026-11-02
OSVUBUNTU-CVE-2022-0577 6.5

Exposure of Sensitive Information to an Unauthorized Actor in GitHub repository scrapy/scrapy prior to 2.6.1.

Record
UBUNTU-CVE-2022-0577
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
CVSS 3.0
8.8 HighCVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVopenSUSE-SU-2024:11889-1 No score

python-Scrapy-doc-2.6.1-1.1 on GA media

These are all security issues fixed in the python-Scrapy-doc-2.6.1-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11889-1
Updated
2026-11-02
OSVPYSEC-2022-159 No score

Exposure of Sensitive Information to an Unauthorized Actor in GitHub repository scrapy/scrapy prior to 2.6.1.

Record
PYSEC-2022-159
Updated
2026-11-02
OSVUSN-7476-1 No score

python-scrapy vulnerabilities

It was discovered that Scrapy improperly exposed HTTP authentication credentials to request targets, including during redirects. An attacker could use this issue to gain unauthorized access to user accounts. This issue only affected Ubuntu 18.04 LTS and Ubuntu 20.04 LTS. (CVE-2021-41125)

It was discovered that Scrapy did not remove the cookie header during cross-domain redirects. An attacker could possibly use this issue to gain unauthorized access to user accounts. This issue only affected Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, and Ubuntu 22.04 LTS. (CVE-2022-0577)

It was discovered that Scrapy inefficiently parsed XML content. An attacker could use this issue to cause a denial of service by sending a crafted XML response. This issue only affected Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, and Ubuntu 22.04 LTS. (CVE-2024-1892)

It was discovered that Scrapy did not properly check response size during decompression. An attacker could send a crafted response that would exhaust memory and cause a denial of service. This issue only affected Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, and Ubuntu 22.04 LTS. (CVE-2024-3572)

It was discovered that Scrapy did not remove the authorization header during cross-domain redirects. An attacker could possibly use this issue to gain unauthorized access to user accounts. This issue only affected Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, and Ubuntu 22.04 LTS. (CVE-2024-3574)

It was discovered that Scrapy did not remove the authorization header during redirects that change scheme but remain in the same domain. This issue could possibly be used by an attacker to expose sensitive information or to gain unauthorized access to user accounts. (CVE-2024-1968)

Record
USN-7476-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
scrapy
PyPI
before 1.8.2
1.8.2
scrapy
PyPI
2.0.0 up to 2.6.0
2.6.0
python-scrapy
Debian:12
before 2.6.1-1
2.6.1-1
python-scrapy
Debian:13
before 2.6.1-1
2.6.1-1
python-scrapy
Debian:14
before 2.6.1-1
2.6.1-1
python-scrapy
Debian:9
From an advisory covering 2 CVEs
before 1.0.3-2+deb9u1, plus listed versions
1.0.3-2
1.0.3-2+deb9u1
scrapy
PyPI
before 1.8.2, plus listed versions
0.10.4.23640.12.0.25500.14.10.14.20.14.3
Show 45 moreShow less
0.14.40.16.00.16.10.16.20.16.30.16.40.16.50.18.00.18.10.18.20.18.30.18.40.20.00.20.10.20.20.22.00.22.10.22.20.24.00.24.10.24.20.24.30.24.40.24.50.24.60.70.80.91.0.01.0.0rc11.0.0rc21.0.0rc31.0.11.0.21.0.31.0.41.0.51.0.61.0.71.1.01.1.0rc11.1.0rc21.1.0rc31.1.0rc41.1.1
1.8.2
scrapy
PyPI
2.0.0 up to 2.6.0, plus listed versions
2.0.12.1.02.2.02.2.12.3.0
Show 4 moreShow less
2.4.02.4.12.5.02.5.1
2.6.0
scrapy
PyPI
before 2.6.1, plus listed versions
0.10.4.23640.12.0.25500.14.10.14.20.14.3
Show 45 moreShow less
0.14.40.16.00.16.10.16.20.16.30.16.40.16.50.18.00.18.10.18.20.18.30.18.40.20.00.20.10.20.20.22.00.22.10.22.20.24.00.24.10.24.20.24.30.24.40.24.50.24.60.70.80.91.0.01.0.0rc11.0.0rc21.0.0rc31.0.11.0.21.0.31.0.41.0.51.0.61.0.71.1.01.1.0rc11.1.0rc21.1.0rc31.1.0rc41.1.1
2.6.1
python-scrapy
Ubuntu:16.04:LTS
All versions, plus listed versions
1.0.0-11.0.3-1
None known
Show 7 moreShow less
Affected packages
PackageAffectedFixed
python-scrapy
Ubuntu:Pro:18.04:LTS
before 1.5.0-1ubuntu0.1~esm1, plus listed versions
1.3.0-1~exp21.4.0-11.5.0-1
1.5.0-1ubuntu0.1~esm1
python-scrapy
Ubuntu:Pro:20.04:LTS
before 1.7.3-1ubuntu0.1~esm1, plus listed versions
1.7.3-1
1.7.3-1ubuntu0.1~esm1
python-scrapy
Ubuntu:Pro:22.04:LTS
before 2.5.1-2ubuntu0.1~esm1, plus listed versions
2.4.1-22.5.1-2
2.5.1-2ubuntu0.1~esm1
python-scrapy
Ubuntu:Pro:18.04:LTS
From an advisory covering 6 CVEs
before 1.5.0-1ubuntu0.1~esm1, plus listed versions
1.3.0-1~exp21.4.0-11.5.0-1
1.5.0-1ubuntu0.1~esm1
python-scrapy
Ubuntu:Pro:20.04:LTS
From an advisory covering 6 CVEs
before 1.7.3-1ubuntu0.1~esm1, plus listed versions
1.7.3-1
1.7.3-1ubuntu0.1~esm1
python-scrapy
Ubuntu:Pro:22.04:LTS
From an advisory covering 6 CVEs
before 2.5.1-2ubuntu0.1~esm1, plus listed versions
2.4.1-22.5.1-2
2.5.1-2ubuntu0.1~esm1
python-scrapy
Ubuntu:Pro:24.04:LTS
From an advisory covering 6 CVEs
before 2.11.1-1ubuntu0.1~esm2, plus listed versions
2.10.0-12.11.0-12.11.0-22.11.1-1
2.11.1-1ubuntu0.1~esm2

History

History
RecordedChangedSources
affected, factsOSV
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2022-0577 is a high vulnerability (CVSS 8.8) in Scrapy, published March 1, 2022. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.23%, the 69th percentile. Fixed in scrapy 1.8.2.

References

Show 13 moreShow less
This page doesn't list everything

Left out here: 60 versions. The JSON record has them.

MoveEnter Open