LiveActive security incident?Get immediate response
CVE Record

CVE-2026-7808: justhtml before 1.16.0 Multiple Security Issues via Sanitization

justhtml before 1.16.0 contains multiple HTML sanitization bypass issues that can allow active/dangerous content (e.g., script or style) to survive sanitization, potentially leading to cross-site scripting. The issues primarily affect advanced usage rather than the default JustHTML(..., sanitize=True) path for ordinary parsed HTML: mutating or reusing sanitization policy objects (including exported defaults) could weaken later sanitization; programmatic DOM input to sanitize()/sanitize_dom() could miss mixed-case tag names (e.g., ScRiPt, StYlE); crafted programmatic doctype names could serialize into active markup; and custom policies preserving SVG or MathML could allow animation elements, presentation attributes with external url(...) references, or DOM trees mislabeled as namespace="html" to bypass foreign-content checks. Fixed in 1.16.0.

CriticalCVSS 9.8Not KEV-listedUpdated
Glexia's TakeAutomated analysiscritical

Security readout for executives and security teams

Plain-English summary

justhtml versions before 1.16.0 can fail to remove dangerous HTML in several advanced usage scenarios. An attacker-controlled input could retain active content and potentially cause cross-site scripting. Ordinary parsed HTML using the default JustHTML(..., sanitize=True) path is less exposed, but applications using custom policies, programmatic DOMs, or reused policy objects require urgent review.

Executive priority

Treat as an urgent upgrade for internet-facing or multi-tenant systems that render sanitized, attacker-controlled content. Prioritize applications using advanced sanitization features. Default-path users have a narrower apparent exposure, but the critical rating and potential cross-site scripting justify prompt inventory, upgrade, and regression testing.

Technical view

Multiple sanitization bypasses involve mutable or reused policies, mixed-case programmatic DOM tags, crafted doctype names, and custom SVG or MathML handling. Namespace mislabeling, animation elements, and external URL references in presentation attributes may also bypass foreign-content controls. The documented impact is potentially active markup and cross-site scripting. Version 1.16.0 fixes the issues.

Likely exposure

Exposure is most likely where untrusted content reaches sanitize() or sanitize_dom() through programmatically constructed DOMs, modified or reused policies, or custom SVG and MathML allowances. Applications limited to ordinary parsed HTML with the default sanitization path appear less exposed, but dependency and usage review is still necessary.

Exploitation context

The bundle reports CVSS 9.8 and network-accessible, low-complexity conditions, but provides no evidence of active exploitation. The CVE is not identified as being in KEV. Practical exploitability depends on attacker-controlled input reaching one of the affected advanced sanitization paths and the resulting output being rendered in a security-sensitive context.

Researcher notes

The source bundle groups several distinct parser, policy-state, serialization, case-handling, and namespace-validation weaknesses under CWE-20. The supplied CVSS implies severe confidentiality, integrity, and availability impact, although the description specifically substantiates potential cross-site scripting. Evidence supplied does not establish exploitation in the wild or quantify affected deployments.

Mitigation direction

  • Upgrade justhtml to version 1.16.0 or later.
  • Identify applications using sanitize(), sanitize_dom(), custom policies, SVG, MathML, or programmatic DOM input.
  • Avoid mutating or reusing exported default policy objects until all deployments are upgraded.
  • Review vendor guidance for any additional hardening or compatibility considerations.

Validation and detection

  • Inventory deployed justhtml versions and confirm none are earlier than 1.16.0.
  • Trace untrusted HTML into sanitization and subsequent browser rendering.
  • Review code for mutable shared policies, custom SVG or MathML allowances, and programmatic DOM construction.
  • Run defensive regression tests covering the documented bypass categories without introducing offensive payloads.
  • Confirm lockfiles, built artifacts, and production deployments resolve to the corrected version.
Prepared
Confidence
high
Sources
4

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · low confidence lookup

CWE-20: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2026-7808 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Critical
CVSS
9.8 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

2CVSS vectors
3Timeline events
1ADP providers
3Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: yesTechnical Impact: total

CVSS vector scores

2 official scores

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
9.8CVSS 3.1CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H3.95.9VulnCheck
9.3CVSS 4.0CriticalCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N——VulnCheck

Vulnerability scoring details

Base CVSS 4.0 score

9.3Critical
CVSS 4.0 vector shape for CVE-2026-7808Attack VectorAttack ComplexityAttack RequirementsPrivileges RequiredUser InteractionVS ConfidentialityVS IntegrityVS AvailabilitySS ConfidentialitySS IntegritySS Availability

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

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Attack Requirements
NonePresent
Privileges Required
NoneLowHigh
User Interaction
NonePassiveActive
VS Confidentiality
HighLowNone
VS Integrity
HighLowNone
VS Availability
HighLowNone
SS Confidentiality
HighLowNone
SS Integrity
HighLowNone
SS Availability
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
other:ssvc

Source materials

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
EmilStenstromjusthtml0, 1.16.0unaffected
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-20 · source CWE mapping

Improper Input Validation

Improper Input Validation represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.