6.1

CVE-2026-65902: DOMPurify before 3.4.7 Hook Mutation Pollution via allowedTags

Modified
AliasesUBUNTU-CVE-2026-65902DEBIAN-CVE-2026-65902CGA-2vr6-8v7h-5c26
Published 23-07-2026Last modified 29-10-2026

Vulnerability summary

CVE-2026-65902 is a medium (CVSS 6.1) Trust Boundary Violation vulnerability in cure53 dompurify. EPSS estimates a 0.36% chance of exploitation in the next 30 days, higher than 29.2% of scored vulnerabilities. 1 public exploit is recorded.

Priority
Routine

Not severe (CVSS 5.3, network access); no exploitation reported by the 5 checked sources

Source freshness unavailable

How is this decided?
CVSS score
6.1/10
010
Medium · v3.1 (CVE.org)
EPSS score
0.36%
0%100%
Low · 0.00 pp in 30 days
KEVNot listedNot listed by any tracked catalog.
RansomwareNot flaggedNo ransomware use recorded.
Public exploits1github

Advisory lineage

Upstream 0 · Downstream 2 · Related 1

Timeline

  1. 23-07-2026
    PublishedVulnerability first disclosed.
  2. 29-10-2026
    Last modifiedVulnerability information updated.

Description

DOMPurify before 3.4.7 passes direct references to the module-level DEFAULT_ALLOWED_TAGS and DEFAULT_ALLOWED_ATTR sets to the uponSanitizeElement and uponSanitizeAttribute hooks via data.allowedTags / data.allowedAttributes when sanitize is called without an explicit cfg.ALLOWED_TAGS / cfg.ALLOWED_ATTR array. A hook that mutates these fields permanently widens the default allow-lists for the lifetime of the DOMPurify instance, so all subsequent default-config sanitize calls inherit the widened defaults and attacker payloads using the poisoned tag/attribute name survive sanitization. removeAllHooks(), clearConfig(), and passing a fresh cfg do not recover the state; only constructing a new DOMPurify instance does.

CVSS metrics

10 scores · 7 sources · 2 versions

EPSS trend

Probability

0.36%

Chance of exploitation in the next 30 days

Percentile

29%

Versus all other CVEs

30-day change

No change 0.00 pp

From 0.36% on 04-10-2026

04-10-202603-11-2026

Known exploited

Compare KEV catalogs
CISA KEV

Not in the CISA KEV catalog.

ENISA CNW

Not in the ENISA CNW catalog.

CIRCL

Not in the CIRCL catalog.

Public exploits

1 found
  • githubUnverified

    Dompurify

    Maturity: poc

Weaknesses

CWE · root cause

Affected systems

Version check

Known conditions: network-reachable, no authentication, user interaction (CVSS vector). Other conditions: not stated in public data.

Chainguard50 products
  • airflow-2All versions (No fix recorded)
  • airflow-core-2All versions (No fix recorded)
  • gitlab-rails-ce-18.1All versions (No fix recorded)
  • gitlab-rails-ce-18.10All versions (No fix recorded)
  • gitlab-rails-ce-18.11All versions (No fix recorded) | < 18.11.13-r0
Wolfi4 products
  • langfuse-3-compat< 3.225.7-r6
  • langfuse-3-worker< 3.191.0-r0
  • nextcloud-server-32< 32.0.12-r0
  • nextcloud-server-33< 33.0.6-r0
Cure531 product
Debian1 product
  • node-dompurifyAll versions (No fix recorded) | < 3.4.12+dfsg-1
Npm1 product
  • dompurify< 3.4.7
Ubuntu1 product
  • node-dompurifyAll versions (No fix recorded)

6 vendors · 58 products

References

9 links