{"id":28765,"date":"2026-09-25T04:31:42","date_gmt":"2026-09-24T20:31:42","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-61784"},"modified":"2026-09-25T04:31:42","modified_gmt":"2026-09-24T20:31:42","slug":"cve-2026-61784","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-61784","title":{"rendered":"CVE-2026-61784 [MEDIUM] &#8211; xhtml-purifier is a Node.js library to take in raw\/unknown\/untrusted HTML and output clean"},"content":{"rendered":"<p>xhtml-purifier is a Node.js library to take in raw\/unknown\/untrusted HTML and output cleaned, purified, trusted HTML. Versions prior to 0.4.3 do not HTML-entity-encode attribute values when serializing its sanitized output. In attributeString() (XHTMLPurifier.js, around line 148) the attribute value is concatenated directly into a double-quoted attribute without encoding. As a result, an attacker-controlled value in any allowed attribute (class, style, title, alt, src, href) can include a double-quote character to break out of the attribute and inject an additional attribute, such as a JavaScript event handler (for example onmouseover or onerror). The injected handler survives sanitization and executes when the output is rendered, which is a sanitizer bypass leading to cross-site scripting. The fix in version 0.4.3 HTML-entity-encodes attribute values before serialization.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>xhtml-purifier is a Node.js library to take in raw\/unknown\/untrusted HTML and output cleaned, purified, trusted HTML. Versions prior to 0.4.3 do not HTML-entity-encode attribute values when serializin<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-28765","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/28765","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=28765"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=28765"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=28765"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}