CVE-2026-77088 justhtml 0.9.0 through 1.21.0 Cross-Site Scripting via code-span

Medium 5.3 Published Updated

Attackers can inject blank lines into code spans to bypass sanitization, causing unescaped HTML to be rendered as live Markdown, leading to XSS.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
None listed

What is CVE-2026-77088?

CVE-2026-77088 is a medium-severity cross-site scripting vulnerability in EmilStenstrom justhtml, published on 23 Aug 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.

Official description

justhtml versions 0.9.0 through 1.21.0 contain a cross-site scripting vulnerability in to_markdown() where inline code spans fail to account for blank lines as block boundaries. Attackers can inject blank lines into code or pre element text to break the inline span, causing sanitized HTML to be emitted unescaped and re-parsed as live Markdown by compliant renderers.

Weakness: CWE-79

Which versions are affected by CVE-2026-77088?

2 open source packages ship an affected version, including justhtml.

PackageAffectedFixed in
justhtml PyPIFrom 0.9.01.22.0
justhtml PyPIFrom 0.9.01.22.0

How do I fix CVE-2026-77088?

Upgrade justhtml to 1.22.0 or later.

Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.

Is CVE-2026-77088 being exploited?

There is no known exploitation of CVE-2026-77088 in the wild and no public exploit code.

Sources

Also known as GHSA-3r4x-v5v7-fm2r, GHSA-jf6w-2mvx-633j.

Is CVE-2026-77088 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free