Impact
Multiple (unprefixed) classnames could be added in markdown source by using character references.
This could make rendered user supplied markdown code elements appear like the rest of the page.
The following markdown:
Would create <pre><code class="language-js xss"></code></pre>
If your page then applied .xss classes (or listeners in JS), those apply to this element.
For more info see https://github.com/ChALkeR/notes/blob/master/Improper-markup-sanitization.md#unsanitized-class-attribute
Patches
The bug was patched. When using regular semver, run npm install. For exact ranges, make sure to use 13.2.1.
Workarounds
Update.
References
Impact
Multiple (unprefixed) classnames could be added in markdown source by using character references.
This could make rendered user supplied markdown
codeelements appear like the rest of the page.The following markdown:
Would create
<pre><code class="language-js xss"></code></pre>If your page then applied
.xssclasses (or listeners in JS), those apply to this element.For more info see https://github.com/ChALkeR/notes/blob/master/Improper-markup-sanitization.md#unsanitized-class-attribute
Patches
The bug was patched. When using regular semver, run
npm install. For exact ranges, make sure to use13.2.1.Workarounds
Update.
References