CVE-2026-84366
WysokieCVSS 7.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 6 - wyżej niż 6% wszystkich znanych CVE
Streszczenie
Scrapy, framework do web crawlingu i scrapingu w Pythonie, przed wersją 2.17.0 ma podatność w scrapy/core/downloader/handlers/s3.py, gdzie S3DownloadHandler konwertuje żądanie z schematem S3 na zwykłe żądanie HTTP do odpowiedniego punktu końcowego S3, chyba że request.meta["is_secure"] jest jawnie włączone, a następnie podpisuje i wysyła to żądanie z skonfigurowanymi poświadczeniami AWS. Atakujący sieciowy, który może obserwować ruch między Scrapy a S3, może odczytać ścieżkę bucket i klucz, nagłówek Authorization AWS, X-Amz-Security-Token przy użyciu tymczasowych poświadczeń, zawartość obiektów S3 i nagłówki odpowiedzi S3. Aktywny atakujący man-in-the-middle może również modyfikować treść odpowiedzi S3, kod statusu i nagłówki przed przetworzeniem przez Scrapy, powodując zatrucie danych scrapowanych, zatrucie eksportów, zatrucie pamięci podręcznej HTTP, gdy buforowanie jest włączone, lub wpływ na późniejsze cele crawl poprzez sfałszowane przekierowania lub linki kontrolowane przez atakującego.
Ocena ryzyka
Podatność może prowadzić do wycieku wrażliwych danych (w tym poświadczeń AWS) oraz do zatrucia danych scrapowanych, co może wpłynąć na integralność przetwarzanych informacji i bezpieczeństwo całego systemu.
Rekomendacja
Zaleca się aktualizację Scrapy do wersji 2.17.0, która zawiera poprawkę. Należy również upewnić się, że żądania S3 są wykonywane przez bezpieczne połączenie (HTTPS) i unikać przesyłania poświadczeń przez niezabezpieczone sieci.
Inne podatności w Scrapy
Oryginalny opis (angielski, źródło NVD)
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.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

