GHSA-cc65-xxvf-f7r9

    Dashboard / Vulnerabilities / GHSA-cc65-xxvf-f7r9

    GHSA-cc65-xxvf-f7r9

    Published: 15 Feb 2024Last Modified: 14 Jan 2025

    Summary: Scrapy vulnerable to ReDoS via XMLFeedSpider

    Details: ### Impact The following parts of the Scrapy API were found to be vulnerable to a [ReDoS attack](https://owasp.org/www-community/attacks/Regular_expression_Denial_of_Service_-_ReDoS): - The [`XMLFeedSpider`](https://docs.scrapy.org/en/latest/topics/spiders.html#scrapy.spiders.XMLFeedSpider) class or any subclass that uses the default node iterator: `iternodes`, as well as direct uses of the `scrapy.utils.iterators.xmliter` function. - **Scrapy 2.6.0 to 2.11.0**: The [`open_in_browser`](https://docs.scrapy.org/en/latest/topics/debug.html#scrapy.utils.response.open_in_browser) function for a response without a [base tag](https://www.w3schools.com/tags/tag_base.asp). Handling a malicious response could cause extreme CPU and memory usage during the parsing of its content, due to the use of vulnerable regular expressions for that parsing. ### Patches 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. ### Workarounds For `XMLFeedSpider`, switch the node iterator to ``xml`` or ``html``. For `open_in_browser`, before using the function, either manually review the response content to discard a ReDos attack or manually define the base tag to avoid its automatic definition by `open_in_browser` later. ### Acknowledgements This security issue was reported by @nicecatch2000 [through huntr.com](https://huntr.com/bounties/271f94f2-1e05-4616-ac43-41752389e26b/).

    Affected packages

    Package

    Name: scrapy

    Purl: pkg:pypi/scrapy

    Affected ranges

    Type: ECOSYSTEM

    Events:

    Introduced- 2
    Fixed -2.11.1

    Affected versions

    2.0.0
    2.0.1

    Common Vulnerability Scoring System

    Attack Vector
    Network
    Adjacent
    Local
    Physical
    Privileges Required
    None
    Low
    High
    User Interaction
    None
    Required
    Scope
    Unchanged
    Changed
    Confidentiality
    None
    Low
    High
    Integrity
    None
    Low
    High
    Availability
    None
    Low
    High
    GHSA-cc65-xxvf-f7r9 | CVE-DB