Advisories for Nuget/HtmlSanitizer package

2026

HtmlSanitizer has a bypass via template tag

If the template tag is allowed, its contents are not sanitized. The template tag is a special tag that does not usually render its contents, unless the shadowrootmode attribute is set to open or closed. The lack of sanitization of the template tag brings up two bypasses: it is still possible to forcibly render the contents of a <template> tag through mutation XSS. The DOM parsers in browsers such as …

HtmlSanitizer has a bypass via template tag

If the template tag is allowed, its contents are not sanitized. The template tag is a special tag that does not usually render its contents, unless the shadowrootmode attribute is set to open or closed. The lack of sanitization of the template tag brings up two bypasses: it is still possible to forcibly render the contents of a <template> tag through mutation XSS. The DOM parsers in browsers such as …

2023

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

HtmlSanitizer is a .NET library for cleaning HTML fragments and documents from constructs that can lead to XSS attacks. The vulnerability occurs in configurations where foreign content is allowed, i.e. either svg or math are in the list of allowed elements. In the case an application sanitizes user input with a vulnerable configuration, an attacker could bypass the sanitization and inject arbitrary HTML, including JavaScript code. Note that in the …

2021

Cross-site Scripting

HtmlSanitizer is a .NET library for cleaning HTML fragments and documents from constructs that can lead to XSS attacks. In HtmlSanitizer, there is a possible XSS bypass if style tag is allowed. If you have explicitly allowed the <style> tag, an attacker could craft HTML that includes script after passing through the sanitizer. The default settings disallow the <style> tag so there is no risk if you have not explicitly …