Cross-site Scripting (XSS) Affecting html-janitor package, versions <2.0.4



    Attack Complexity Low
    Confidentiality High
    Integrity High

    Threat Intelligence

    Exploit Maturity Mature
    EPSS 0.07% (29th percentile)
Expand this section
6.1 medium

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk ID npm:html-janitor:20180123
  • published 11 Feb 2018
  • disclosed 23 Jan 2018
  • credit Martin Bajanik

How to fix?

Upgrade html-janitor to version 2.0.4 or higher.


html-janitor is a library that cleans up your markup and allows you to take control of your HTML.

Affected versions of this package are vulnerable to Cross-site Scripting (XSS). Arbitrary HTML can pass the sanitization process, which can be unexpected and dangerous (XSS) in case user-controlled input is passed to the clean function.

PoC by Martin Bajanik

var myJanitor = new HTMLJanitor({tags:{p:{}}});
var cleanHtml = myJanitor.clean("<form><object onmouseover=alert(document.domain) name=_sanitized></object></form>")
// logs: <form><object onmouseover=alert(document.domain) name=_sanitized></object></form>