Description
justhtml versions <= 1.11.0 (fixed in 1.12.0) do not sufficiently escape HTML-significant characters (angle brackets) in text nodes when converting a parsed document to Markdown via to_markdown(). While a small set of Markdown metacharacters are escaped, characters such as < and > are preserved, so untrusted input that is safe in to_html() — including entity-decoded text (e.g. &lt;script&gt;) or text from RCDATA/RAWTEXT-parsed elements like <title>, <textarea>, <noscript>, and <plaintext> — can be emitted as raw HTML in the Markdown output, enabling a sanitizer bypass and potential cross-site scripting when that output is rendered.
Published: 2026-08-23
Score: 9.3 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Cross‑Site Scripting via Markdown sanitizer bypass
Action: Immediate Patch
AI Analysis

Impact

justhtml versions 1.11.0 and earlier do not escape angle brackets in text nodes when converting to Markdown. The conversion preserves < and > characters, allowing untrusted input that is safe in HTML rendering to be emitted as raw HTML in the Markdown output. This can be used to inject and execute malicious scripts when the Markdown is later rendered, enabling cross‑site scripting attacks. The likely attack vector is an attacker placing malicious payloads in text nodes, RCDATA/RAWTEXT elements, or entity‑decoded text that bypasses the sanitization step.

Affected Systems

The vulnerable code is in EmilStenstrom’s justhtml library. All releases up to and including 1.11.0 are affected. Version 1.12.0 and later contain the fix that correctly escapes HTML‑significant characters during Markdown conversion.

Risk and Exploitability

The CVSS score of 9.3 classifies this flaw as Critical, indicating a high risk of exploitation. While an EPSS score is not available, the flaw is not listed in the CISA KEV catalog, so no known public exploits are documented. However, the vulnerability can be exploited by supplying crafted input to the to_markdown() function, and the resulting Markdown can lead to XSS when rendered in a browser.

Generated by OpenCVE AI on August 23, 2026 at 15:51 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade justhtml to version 1.12.0 or later, which implements proper escaping for angle brackets during Markdown conversion.
  • If an upgrade is not possible, ensure that any Markdown output is passed through a sanitizer that strips or neutralizes raw HTML before rendering, or configure the rendering engine to disable HTML rendering.
  • Validate or sanitize the source data before feeding it to to_markdown() to ensure that potentially dangerous content is removed or escaped at the source.

Generated by OpenCVE AI on August 23, 2026 at 15:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 24 Aug 2026 19:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Sun, 23 Aug 2026 16:45:00 +0000

Type Values Removed Values Added
First Time appeared Emilstenstrom
Emilstenstrom justhtml
Vendors & Products Emilstenstrom
Emilstenstrom justhtml

Sun, 23 Aug 2026 14:00:00 +0000

Type Values Removed Values Added
Description justhtml versions <= 1.11.0 (fixed in 1.12.0) do not sufficiently escape HTML-significant characters (angle brackets) in text nodes when converting a parsed document to Markdown via to_markdown(). While a small set of Markdown metacharacters are escaped, characters such as < and > are preserved, so untrusted input that is safe in to_html() — including entity-decoded text (e.g. &lt;script&gt;) or text from RCDATA/RAWTEXT-parsed elements like <title>, <textarea>, <noscript>, and <plaintext> — can be emitted as raw HTML in the Markdown output, enabling a sanitizer bypass and potential cross-site scripting when that output is rendered.
Title justhtml before 1.12.0 Sanitizer Bypass via Markdown
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 9.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Emilstenstrom Justhtml
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-24T19:06:17.094Z

Reserved: 2026-05-12T20:21:38.368Z

Link: CVE-2026-8445

cve-icon Vulnrichment

Updated: 2026-08-24T19:05:50.940Z

cve-icon NVD

Status : Deferred

Published: 2026-08-23T14:16:54.957

Modified: 2026-08-26T17:10:53.700

Link: CVE-2026-8445

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-23T16:39:36Z

Weaknesses
  • CWE-79

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