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.
justhtml 0.9.0 through 1.21.0 Cross-Site Scripting via code-span
Problem type
Affected products
EmilStenstrom
< 0.9.0 - UNAFFECTED
References
https://github.com/EmilStenstrom/justhtml/security/advisories/GHSA-jf6w-2mvx-633j
https://www.vulncheck.com/advisories/justhtml-through-cross-site-scripting-via-code-span
GitHub Security Advisories
GHSA-3r4x-v5v7-fm2r
justhtml versions 0.9.0 through 1.21.0 contain a cross-site scripting vulnerability in...
https://github.com/advisories/GHSA-3r4x-v5v7-fm2rjusthtml 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.
https://github.com/EmilStenstrom/justhtml/security/advisories/GHSA-jf6w-2mvx-633j
https://nvd.nist.gov/vuln/detail/CVE-2026-77088
https://www.vulncheck.com/advisories/justhtml-through-cross-site-scripting-via-code-span
https://github.com/advisories/GHSA-3r4x-v5v7-fm2r
JSON source
https://cveawg.mitre.org/api/cve/CVE-2026-77088Click to expand
{
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"cveMetadata": {
"cveId": "CVE-2026-77088",
"assignerOrgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"assignerShortName": "VulnCheck",
"dateUpdated": "2026-08-23T13:34:12.574Z",
"dateReserved": "2026-08-20T10:55:09.093Z",
"datePublished": "2026-08-23T13:34:12.574Z",
"state": "PUBLISHED"
},
"containers": {
"cna": {
"providerMetadata": {
"orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"shortName": "VulnCheck",
"dateUpdated": "2026-08-23T13:34:12.574Z"
},
"datePublic": "2026-05-22T00:00:00.000Z",
"title": "justhtml 0.9.0 through 1.21.0 Cross-Site Scripting via code-span",
"descriptions": [
{
"lang": "en",
"value": "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."
}
],
"affected": [
{
"vendor": "EmilStenstrom",
"product": "justhtml",
"defaultStatus": "affected",
"versions": [
{
"version": "0",
"status": "unaffected",
"versionType": "semver",
"lessThan": "0.9.0"
}
]
}
],
"problemTypes": [
{
"descriptions": [
{
"lang": "en",
"description": "Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')",
"cweId": "CWE-79",
"type": "CWE"
}
]
}
],
"references": [
{
"url": "https://github.com/EmilStenstrom/justhtml/security/advisories/GHSA-jf6w-2mvx-633j",
"name": "GitHub Security Advisory (GHSA-jf6w-2mvx-633j)",
"tags": [
"vendor-advisory"
]
},
{
"url": "https://www.vulncheck.com/advisories/justhtml-through-cross-site-scripting-via-code-span",
"name": "VulnCheck Advisory: justhtml 0.9.0 through 1.21.0 Cross-Site Scripting via code-span",
"tags": [
"third-party-advisory"
]
}
],
"metrics": [
{
"format": "CVSS"
},
{
"format": "CVSS",
"cvssV3_1": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "NONE",
"userInteraction": "REQUIRED",
"scope": "CHANGED",
"confidentialityImpact": "LOW",
"integrityImpact": "LOW",
"availabilityImpact": "NONE",
"baseScore": 6.1,
"baseSeverity": "MEDIUM"
}
}
],
"credits": [
{
"lang": "en",
"value": "seankohjs",
"type": "reporter"
},
{
"lang": "en",
"value": "yueyueL",
"type": "reporter"
}
]
}
}
}