GHSA-79mx-88w7-8f7q

    Dashboard / Vulnerabilities / GHSA-79mx-88w7-8f7q

    GHSA-79mx-88w7-8f7q

    Published: 6 Nov 2018Last Modified: 8 Nov 2023
    Aliases:

    Summary: XSS Filter Bypass via Encoded URL in validator

    Details: Versions of `validator` prior to 2.0.0 contained an xss filter method that is affected by several filter bypasses. This may result in a cross-site scripting vulnerability. ## Proof of Concept The xss() function removes the word "javascript" when contained inside an attribute. However, it does not properly handle cases where characters have been hex-encoded. As a result, it is possible to build an input that bypasses the filter but which the browser will accept as valid JavaScript. For example: ```<a href="jav&#x61;script:...">abc</a>``` will render as: ```<a href="javascript:...">abc</a>``` ## Recommendation The package author has decided to remove the xss filter functionality in the latest version of this module. If this feature is not currently being used, you are not affected by the vulnerability. If it is being used, updating to the latest version of the module will break your application. In order for affected users to mitigate this vulnerability, it is necessary to use an [alternative package](https://www.npmjs.com/search?q=xss%20filter&page=1&ranking=optimal) that provides similar functionality.

    Affected packages

    Package

    Name: validator

    Purl: pkg:npm/validator

    Affected ranges

    Type: SEMVER

    Events:

    Introduced- 0
    Fixed -2.0.0

    Affected versions

    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