Skip to main content

Justhtml

11 CVEs product

Monthly

CVE-2026-9769 PyPI HIGH POC PATCH GHSA This Week

Uncontrolled recursion in the justhtml Python HTML parsing library (all versions through 1.9.1) allows any remote unauthenticated attacker who can supply HTML input to trigger a denial of service via stack exhaustion. Approximately 1,000 nested HTML elements (~11 KB of crafted input) are sufficient to exceed CPython's default recursion limit of 1,000 frames during DOM traversal in TreeBuilder._find_elements(), raising an unhandled RecursionError that can abort parsing, fail requests, or terminate a worker process depending on framework error handling. Vendor patch 1.10.0 is available; no public exploit code or CISA KEV listing has been identified at time of analysis, though the advisory's code-level detail makes independent reproduction trivial.

Denial Of Service Justhtml
NVD GitHub VulDB
CVSS 4.0
8.7
EPSS
0.3%
CVE-2026-8630 PyPI MEDIUM PATCH This Month

Mutation XSS in justhtml (versions ≤1.11.0) allows injection of arbitrary HTML into serialized output when applications use a custom sanitization policy that retains raw-text elements such as <style> or <script>. Attacker-controlled text node content containing a closing tag sequence causes the serializer to break out of the raw-text context, inserting attacker-supplied markup into the final HTML string rendered by a victim's browser. No public exploit has been identified at time of analysis, but a vendor-released patch exists in version 1.12.0.

XSS Justhtml
NVD GitHub VulDB
CVSS 4.0
5.1
EPSS
0.2%
CVE-2026-8445 PyPI CRITICAL PATCH Act Now

Sanitizer bypass in the justhtml Python library (versions <= 1.11.0) allows attacker-controlled input to survive as raw HTML in the output of to_markdown(), enabling cross-site scripting when that Markdown is later rendered. Although to_html() safely neutralizes the same input, the Markdown serializer escapes only a handful of Markdown metacharacters and leaves angle brackets (< and >) intact, so entity-decoded text (e.g. &lt;script&gt;) or text from RCDATA/RAWTEXT elements like <title>, <textarea>, <noscript>, and <plaintext> is emitted verbatim. Publicly available exploit code exists (a proof-of-concept is published in the vendor advisory), and the flaw is fixed in 1.12.0.

XSS Justhtml
NVD GitHub
CVSS 4.0
9.3
EPSS
0.4%
CVE-2026-7808 PyPI CRITICAL PATCH Act Now

Cross-site scripting via HTML sanitization bypass affects justhtml (a Python HTML parsing/sanitization library by EmilStenstrom) in all versions up to and including 1.15.0, letting active content such as script or style survive sanitization. The flaws mostly hit advanced usage - programmatic DOM input, reused or mutated policy objects, and custom policies that preserve SVG/MathML - rather than the default JustHTML(..., sanitize=True) path, though process-wide mutation of exported default policies can weaken sanitization broadly. Reported by VulnCheck and fixed in 1.16.0; no public exploit identified at time of analysis and it is not listed in CISA KEV.

XSS Justhtml
NVD GitHub
CVSS 4.0
9.3
EPSS
0.4%
CVE-2026-77088 PyPI MEDIUM PATCH This Month

Cross-site scripting in justhtml 0.9.0-1.21.0 allows an attacker who can control the text content of HTML code or pre elements to escape the Markdown inline code span produced by to_markdown(), causing sanitized content to be emitted unescaped and re-parsed as live HTML by a downstream Markdown renderer. The to_markdown() function is explicitly documented as a security boundary, making this a trust-model violation. No public exploit code has been identified and CISA KEV status is not confirmed, but the root cause is a fundamental gap in the inline code-span helper that bypasses the library's own stated sanitization guarantees.

XSS Justhtml
NVD GitHub
CVSS 4.0
5.3
EPSS
0.2%
CVE-2026-74793 MEDIUM PATCH This Month

Cross-site scripting in justhtml before 3.11.0 allows remote unauthenticated attackers to execute arbitrary JavaScript in victims' browsers via SVG or MathML elements injected through selectedcontent projections. The default sanitizer fails to remove event handlers that are cloned and reinserted during the selectedcontent projection process, bypassing the library's intended sanitization guarantees. No public exploit code has been identified at the time of analysis, and a vendor patch (3.11.0) is available; EPSS data was not provided but the CVSS 4.0 score of 5.1 reflects the user-interaction requirement limiting opportunistic exploitation.

XSS Justhtml
NVD GitHub
CVSS 4.0
5.1
EPSS
0.2%
CVE-2026-6827 PyPI MEDIUM PATCH This Month

Sanitization bypass in justhtml (Python HTML sanitization library) before version 1.17.0 enables cross-site scripting in applications using custom policies that preserve SVG or MathML namespaces, custom policies that preserve <style> blocks, or programmatic DOM construction prior to serialization. Crafted HTML input containing mutation-XSS parser-differential payloads, HTML integration points such as SVG <foreignObject> or MathML <annotation-xml encoding="text/html">, or resource-loading CSS constructs can survive sanitization and activate as executable markup after browser reparse. No public exploit code has been identified and the CISA KEV list does not list this CVE; notably, the default JustHTML(..., sanitize=True) configuration is not affected by most of the reported issues.

XSS Justhtml
NVD GitHub
CVSS 4.0
5.1
EPSS
0.2%
CVE-2026-5751 PyPI MEDIUM PATCH This Month

Mutation XSS (mXSS) in justhtml 1.13.0 and earlier enables markup injection bypass against applications using non-default custom SanitizationPolicy configurations that preserve foreign namespaces. Specially crafted input sanitizes to apparently clean markup that is subsequently reinterpreted as executable script when re-parsed by a browser - a classic parser-differential attack. No public exploit identified at time of analysis and this CVE is not in CISA KEV; however, the no-special-authentication-required network attack vector and the availability of a confirmed patch commit make prompt upgrading the correct response for any application using affected custom policies.

XSS Justhtml
NVD GitHub
CVSS 4.0
5.1
EPSS
0.2%
CVE-2026-5389 PyPI MEDIUM PATCH This Month

Cross-site scripting in justhtml versions before 1.13.0 allows attackers who control `<pre>` element content to break out of fixed-length Markdown code fences and inject raw HTML into the serialized output. When an application passes attacker-supplied HTML through `JustHTML(..., sanitize=True).to_markdown()` and a downstream CommonMark or GFM renderer processes the result with raw-HTML enabled, the injected script executes in the victim's browser. A proof-of-concept with full reproduction steps is publicly available in the GHSA advisory; no public exploit identified at time of analysis beyond that PoC.

XSS Justhtml
NVD GitHub
CVSS 4.0
5.1
EPSS
0.2%
CVE-2026-5388 PyPI CRITICAL PATCH Act Now

Sanitization bypass in justhtml (a Python HTML/Markdown sanitization library) before 1.15.0 lets attacker-controlled input reintroduce active HTML and JavaScript, resulting in cross-site scripting in consuming web applications. The flaws span URL-sanitization helpers, HTML serialization, Markdown passthrough, and custom policies - most do NOT affect the default sanitize=True path but do affect helper APIs, programmatic DOM construction, html_passthrough=True, and custom policies. No public exploit identified at time of analysis; the issue was reported by VulnCheck and fixed in 1.15.0.

Authentication Bypass Justhtml
NVD GitHub VulDB
CVSS 4.0
9.3
EPSS
0.3%
CVE-2026-4671 PyPI HIGH PATCH This Week

Uncontrolled resource consumption in justhtml before 1.18.0 enables denial-of-service conditions through CPU and memory exhaustion when processing attacker-controlled CSS selectors, large untrusted documents, cyclic DOM graphs, or linkification input. The impact is strictly availability - the advisory explicitly confirms no script execution, data disclosure, or sanitizer bypass is possible. No public exploit has been identified at time of analysis, and default JustHTML(sanitize=True) configurations are not expected to be exposed; risk is confined to applications that forward untrusted input into selector-evaluation or linkification APIs.

Denial Of Service Justhtml
NVD GitHub
CVSS 4.0
8.7
EPSS
0.4%
EPSS 0% CVSS 8.7
HIGH POC PATCH This Week

Uncontrolled recursion in the justhtml Python HTML parsing library (all versions through 1.9.1) allows any remote unauthenticated attacker who can supply HTML input to trigger a denial of service via stack exhaustion. Approximately 1,000 nested HTML elements (~11 KB of crafted input) are sufficient to exceed CPython's default recursion limit of 1,000 frames during DOM traversal in TreeBuilder._find_elements(), raising an unhandled RecursionError that can abort parsing, fail requests, or terminate a worker process depending on framework error handling. Vendor patch 1.10.0 is available; no public exploit code or CISA KEV listing has been identified at time of analysis, though the advisory's code-level detail makes independent reproduction trivial.

Denial Of Service Justhtml
NVD GitHub VulDB
EPSS 0% CVSS 5.1
MEDIUM PATCH This Month

Mutation XSS in justhtml (versions ≤1.11.0) allows injection of arbitrary HTML into serialized output when applications use a custom sanitization policy that retains raw-text elements such as <style> or <script>. Attacker-controlled text node content containing a closing tag sequence causes the serializer to break out of the raw-text context, inserting attacker-supplied markup into the final HTML string rendered by a victim's browser. No public exploit has been identified at time of analysis, but a vendor-released patch exists in version 1.12.0.

XSS Justhtml
NVD GitHub VulDB
EPSS 0% CVSS 9.3
CRITICAL PATCH Act Now

Sanitizer bypass in the justhtml Python library (versions <= 1.11.0) allows attacker-controlled input to survive as raw HTML in the output of to_markdown(), enabling cross-site scripting when that Markdown is later rendered. Although to_html() safely neutralizes the same input, the Markdown serializer escapes only a handful of Markdown metacharacters and leaves angle brackets (< and >) intact, so entity-decoded text (e.g. &lt;script&gt;) or text from RCDATA/RAWTEXT elements like <title>, <textarea>, <noscript>, and <plaintext> is emitted verbatim. Publicly available exploit code exists (a proof-of-concept is published in the vendor advisory), and the flaw is fixed in 1.12.0.

XSS Justhtml
NVD GitHub
EPSS 0% CVSS 9.3
CRITICAL PATCH Act Now

Cross-site scripting via HTML sanitization bypass affects justhtml (a Python HTML parsing/sanitization library by EmilStenstrom) in all versions up to and including 1.15.0, letting active content such as script or style survive sanitization. The flaws mostly hit advanced usage - programmatic DOM input, reused or mutated policy objects, and custom policies that preserve SVG/MathML - rather than the default JustHTML(..., sanitize=True) path, though process-wide mutation of exported default policies can weaken sanitization broadly. Reported by VulnCheck and fixed in 1.16.0; no public exploit identified at time of analysis and it is not listed in CISA KEV.

XSS Justhtml
NVD GitHub
EPSS 0% CVSS 5.3
MEDIUM PATCH This Month

Cross-site scripting in justhtml 0.9.0-1.21.0 allows an attacker who can control the text content of HTML code or pre elements to escape the Markdown inline code span produced by to_markdown(), causing sanitized content to be emitted unescaped and re-parsed as live HTML by a downstream Markdown renderer. The to_markdown() function is explicitly documented as a security boundary, making this a trust-model violation. No public exploit code has been identified and CISA KEV status is not confirmed, but the root cause is a fundamental gap in the inline code-span helper that bypasses the library's own stated sanitization guarantees.

XSS Justhtml
NVD GitHub
EPSS 0% CVSS 5.1
MEDIUM PATCH This Month

Cross-site scripting in justhtml before 3.11.0 allows remote unauthenticated attackers to execute arbitrary JavaScript in victims' browsers via SVG or MathML elements injected through selectedcontent projections. The default sanitizer fails to remove event handlers that are cloned and reinserted during the selectedcontent projection process, bypassing the library's intended sanitization guarantees. No public exploit code has been identified at the time of analysis, and a vendor patch (3.11.0) is available; EPSS data was not provided but the CVSS 4.0 score of 5.1 reflects the user-interaction requirement limiting opportunistic exploitation.

XSS Justhtml
NVD GitHub
EPSS 0% CVSS 5.1
MEDIUM PATCH This Month

Sanitization bypass in justhtml (Python HTML sanitization library) before version 1.17.0 enables cross-site scripting in applications using custom policies that preserve SVG or MathML namespaces, custom policies that preserve <style> blocks, or programmatic DOM construction prior to serialization. Crafted HTML input containing mutation-XSS parser-differential payloads, HTML integration points such as SVG <foreignObject> or MathML <annotation-xml encoding="text/html">, or resource-loading CSS constructs can survive sanitization and activate as executable markup after browser reparse. No public exploit code has been identified and the CISA KEV list does not list this CVE; notably, the default JustHTML(..., sanitize=True) configuration is not affected by most of the reported issues.

XSS Justhtml
NVD GitHub
EPSS 0% CVSS 5.1
MEDIUM PATCH This Month

Mutation XSS (mXSS) in justhtml 1.13.0 and earlier enables markup injection bypass against applications using non-default custom SanitizationPolicy configurations that preserve foreign namespaces. Specially crafted input sanitizes to apparently clean markup that is subsequently reinterpreted as executable script when re-parsed by a browser - a classic parser-differential attack. No public exploit identified at time of analysis and this CVE is not in CISA KEV; however, the no-special-authentication-required network attack vector and the availability of a confirmed patch commit make prompt upgrading the correct response for any application using affected custom policies.

XSS Justhtml
NVD GitHub
EPSS 0% CVSS 5.1
MEDIUM PATCH This Month

Cross-site scripting in justhtml versions before 1.13.0 allows attackers who control `<pre>` element content to break out of fixed-length Markdown code fences and inject raw HTML into the serialized output. When an application passes attacker-supplied HTML through `JustHTML(..., sanitize=True).to_markdown()` and a downstream CommonMark or GFM renderer processes the result with raw-HTML enabled, the injected script executes in the victim's browser. A proof-of-concept with full reproduction steps is publicly available in the GHSA advisory; no public exploit identified at time of analysis beyond that PoC.

XSS Justhtml
NVD GitHub
EPSS 0% CVSS 9.3
CRITICAL PATCH Act Now

Sanitization bypass in justhtml (a Python HTML/Markdown sanitization library) before 1.15.0 lets attacker-controlled input reintroduce active HTML and JavaScript, resulting in cross-site scripting in consuming web applications. The flaws span URL-sanitization helpers, HTML serialization, Markdown passthrough, and custom policies - most do NOT affect the default sanitize=True path but do affect helper APIs, programmatic DOM construction, html_passthrough=True, and custom policies. No public exploit identified at time of analysis; the issue was reported by VulnCheck and fixed in 1.15.0.

Authentication Bypass Justhtml
NVD GitHub VulDB
EPSS 0% CVSS 8.7
HIGH PATCH This Week

Uncontrolled resource consumption in justhtml before 1.18.0 enables denial-of-service conditions through CPU and memory exhaustion when processing attacker-controlled CSS selectors, large untrusted documents, cyclic DOM graphs, or linkification input. The impact is strictly availability - the advisory explicitly confirms no script execution, data disclosure, or sanitizer bypass is possible. No public exploit has been identified at time of analysis, and default JustHTML(sanitize=True) configurations are not expected to be exposed; risk is confined to applications that forward untrusted input into selector-evaluation or linkification APIs.

Denial Of Service Justhtml
NVD GitHub

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy