Description
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in dashbitco lazy_html allows mutation XSS via a parse and serialize round-trip of attacker-supplied HTML. LazyHTML.to_html/2 and LazyHTML.Tree.to_html/2 decide whether to escape an element's text from its tag name alone. A style or script element inside SVG or MathML foreign content is parsed with character references decoded, but is serialized as an HTML raw-text element, so its text is emitted unescaped. Encoded markup such as </style><img src=x onerror=...> inside <svg><style> therefore closes the element on re-parse and becomes live markup. Applications that parse untrusted HTML with lazy_html, filter the document or tree, and serialize it for display are affected, since the payload is a plain text node that no element or attribute filter sees. This issue affects lazy_html: from 0.1.0 before 0.1.13.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
dashbitco lazy_html
Default version status: unaffected
0.1.0 to < 0.1.13affected
pkg:hex/lazy_htmldashbitco lazy_html
Default version status: unaffected
1dee15746c024916b3110af8b168c2f3b3065fbd to < f32c7fd6223225b68bc8691c78b6d4a77972f1d5affected
pkg:github/dashbitco/lazy_htmlReferences
- https://github.com/dashbitco/lazy_html/security/advisories/GHSA-8rqp-v692-v82q ↗
- https://cna.erlef.org/cves/CVE-2026-92106.html ↗
- https://osv.dev/vulnerability/EEF-CVE-2026-92106 ↗
- https://github.com/dashbitco/lazy_html/commit/1dee15746c024916b3110af8b168c2f3b3065fbd ↗
- https://github.com/dashbitco/lazy_html/commit/f32c7fd6223225b68bc8691c78b6d4a77972f1d5 ↗