CVE-2026-84366

EUVD-2026-69647
Scrapy is a high-level web crawling and scraping framework for Python. Prior to 2.17.0, in scrapy/core/downloader/handlers/s3.py, Scrapy's S3DownloadHandler converts an S3-scheme bucket and key request into a plaintext HTTP request to the corresponding S3 endpoint unless request.meta["is_secure"] is explicitly enabled, then signs and sends the plaintext request with configured AWS credentials. A network attacker who can observe traffic between Scrapy and S3 can read the bucket and key path, AWS Authorization header, X-Amz-Security-Token when temporary credentials are used, S3 object contents, and S3 response headers. An active man-in-the-middle attacker can also modify the plaintext S3 response body, status code, and headers before Scrapy processes them, causing scraped-data poisoning, poisoned exports, HTTP cache poisoning when caching is enabled, or influence over later crawl targets through forged redirects or attacker-controlled links. Users making S3-scheme requests with AWS credentials are affected. This issue is fixed in version 2.17.0.
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
GitHub_MCNA
7.4 HIGH
NETWORK
HIGH
NONE
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Base Score
CVSS 3.x
EPSS Score
Percentile: 15.86%
Early Detection
Affected products identified ahead of NVD analysis through intelligence sources.
VendorProductVersionSource
scrapyscrapy
𝑥
< 2.17.0
CNA
Debian logo
Debian Releases
Debian Product
Codename
python-scrapy
bookworm
postponed
forky
2.19.0-1
fixed
sid
2.19.0-1
fixed
trixie
no-dsa
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
python2.7
bionic
needs-triage
focal
needs-triage
jammy
needs-triage
noble
dne
resolute
dne
trusty
needs-triage
xenial
needs-triage
python3.4
jammy
dne
noble
dne
resolute
dne
trusty
needs-triage
python3.5
jammy
dne
noble
dne
resolute
dne
trusty
needs-triage
xenial
needs-triage
python3.6
bionic
needs-triage
jammy
dne
noble
dne
resolute
dne
python3.7
bionic
needs-triage
jammy
dne
noble
dne
resolute
dne
python3.8
bionic
needs-triage
focal
needs-triage
jammy
dne
noble
dne
resolute
dne
python3.9
focal
needs-triage
jammy
dne
noble
dne
resolute
dne
python3.10
jammy
needs-triage
noble
dne
resolute
dne
python3.11
jammy
needs-triage
noble
dne
resolute
dne
python3.12
jammy
dne
noble
needs-triage
resolute
dne
python3.14
jammy
dne
noble
dne
resolute
needs-triage