CVE-2026-65902
DOMPurify before 3.4.7 Hook Mutation Pollution via allowedTags
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Passive
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used 5.3
DOMPurify before 3.4.7 Hook Mutation Pollution via allowedTags
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.
- Record
CVE-2026-65902- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N - CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-501
- Updated
- 2026-11-02
EUVDEUVD-2026-48271 5.3
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.
- Record
EUVD-2026-48271- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-2cf5-4w76-r9qv 7.3
Arbitrary Code Execution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.2 are vulnerable to Arbitrary Code Execution. The package's lookup helper fails to properly validate templates, allowing attackers to submit templates that execute arbitrary JavaScript in the system. It can be used to run arbitrary code in a server processing Handlebars templates or on a victim's browser (effectively serving as Cross-Site Scripting).
The following template can be used to demonstrate the vulnerability:
{{#with split as |a|}}
{{pop (push "alert('Vulnerable Handlebars JS');")}}
{{#with (concat (lookup join (slice 0 1)))}}
{{#each (slice 2 3)}}
{{#with (apply 0 a)}}
{{.}}
{{/with}}
{{/each}}
{{/with}}
{{/with}}
{{/with}}```
## Recommendation
Upgrade to version 3.0.8, 4.5.2 or later.
- Record
GHSA-2cf5-4w76-r9qv- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:L/I:H/A:L - Weakness
- CWE-94
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-76mc-f452-cxcm 6.1
DOMPurify: Hook mutation of `data.allowedTags` / `data.allowedAttributes` permanently pollutes `DEFAULT_ALLOWED_TAGS` / `DEFAULT_ALLOWED_ATTR`
Hook mutation of data.allowedTags / data.allowedAttributes permanently pollutes DEFAULT_ALLOWED_TAGS / DEFAULT_ALLOWED_ATTR
CWE: CWE-501 (Trust Boundary Violation — hook-scoped mutation leaks to global default sets) via CWE-693 (Protection Mechanism Failure — the default allow-list is silently widened for all subsequent sanitize calls)
Summary
The data.allowedTags and data.allowedAttributes fields passed to uponSanitizeElement and uponSanitizeAttribute hooks are direct references to the library's live ALLOWED_TAGS / ALLOWED_ATTR sets. For sanitize calls that don't supply an explicit cfg.ALLOWED_TAGS / cfg.ALLOWED_ATTR array, those live sets are themselves direct references to the module-level DEFAULT_ALLOWED_TAGS / DEFAULT_ALLOWED_ATTR constants. A hook that mutates these fields — a natural-looking pattern for "allow X for this iteration" — permanently writes new entries into the default constants for the DOMPurify instance's lifetime. Every subsequent sanitize call that doesn't override the config inherits the widened defaults, so an attacker payload that uses the poisoned tag/attribute name survives sanitization. removeAllHooks(), clearConfig(), and even passing a fresh cfg: {} do not recover; only constructing a new DOMPurify instance does.
The maintainer's existing defense at src/purify.ts:696-700 explicitly clones DEFAULT_ALLOWED_TAGS before mutating it via cfg.ADD_TAGS (array form), demonstrating awareness of this exact class. The hook path remained uncovered.
Affected
- DOMPurify ≤ 3.4.5, including
mainat7996f1dc78eb8b7922388aed75d94a9f8fad9a36 - Any application that installs a hook on
uponSanitizeElementoruponSanitizeAttributethat writes todata.allowedTags[...] = trueordata.allowedAttributes[...] = trueand later sanitizes attacker-influenced content with default config (no explicitcfg.ALLOWED_TAGS/cfg.ALLOWED_ATTRarray)
Vulnerability details
[A] — data.allowedTags is a reference to ALLOWED_TAGS
src/purify.ts:1206-1209:
_executeHooks(hooks.uponSanitizeElement, currentNode, {
tagName,
allowedTags: ALLOWED_TAGS, // [A] direct reference; hook mutation
// mutates the very ALLOWED_TAGS the
// library checks on the next element
});
src/purify.ts:1494-1500 (the matching attribute hook):
const hookEvent = {
attrName: '',
attrValue: '',
keepAttr: true,
allowedAttributes: ALLOWED_ATTR, // [A'] same pattern
forceKeepAttr: undefined,
};
[B] — ALLOWED_TAGS = DEFAULT_ALLOWED_TAGS for default-cfg sanitize calls
src/purify.ts:527-531:
ALLOWED_TAGS =
objectHasOwnProperty(cfg, 'ALLOWED_TAGS') &&
arrayIsArray(cfg.ALLOWED_TAGS)
? addToSet({}, cfg.ALLOWED_TAGS, transformCaseFunc)
: DEFAULT_ALLOWED_TAGS; // [B] reference assignment; ALLOWED_TAGS
// IS the DEFAULT_ALLOWED_TAGS object
(The ALLOWED_ATTR = DEFAULT_ALLOWED_ATTR path at :532-536 is symmetric.)
The mismatch
A hook author who writes data.allowedTags['script'] = true reasonably expects per-call scope — the API name is "data", suggesting per-event payload. But [A] makes this a direct reference, and [B] makes that reference equal to the module-level default for the common default-cfg path. The hook's mutation therefore writes to a constant that every subsequent default-cfg sanitize call rebinds to.
The maintainer already recognized this class for the ADD_TAGS array path — src/purify.ts:696-700:
} else if (arrayIsArray(cfg.ADD_TAGS)) {
if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) {
ALLOWED_TAGS = clone(ALLOWED_TAGS); // explicitly clone DEFAULT before
// mutating to avoid this pollution
}
addToSet(ALLOWED_TAGS, cfg.ADD_TAGS, transformCaseFunc);
}
The same…
- Record
GHSA-76mc-f452-cxcm- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-501, CWE-693
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-q42p-pg8m-cqh6 7.3
Prototype Pollution in handlebars
Versions of handlebars prior to 4.0.14 are vulnerable to Prototype Pollution. Templates may alter an Objects' prototype, thus allowing an attacker to execute arbitrary code on the server.
Recommendation
For handlebars 4.1.x upgrade to 4.1.2 or later. For handlebars 4.0.x upgrade to 4.0.14 or later.
- Record
GHSA-q42p-pg8m-cqh6- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-471
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-g9r4-xpmj-mj65No score
Prototype Pollution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.3 are vulnerable to prototype pollution. It is possible to add or modify properties to the Object prototype through a malicious template. This may allow attackers to crash the application or execute Arbitrary Code in specific conditions.
Recommendation
Upgrade to version 3.0.8, 4.5.3 or later.
- Record
GHSA-g9r4-xpmj-mj65- Weakness
- CWE-1321
- Updated
- 2026-11-02
Show 52 moreShow less
GitHub AdvisoriesGHSA-q2c6-c6pm-g3ghNo score
Arbitrary Code Execution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.3 are vulnerable to Arbitrary Code Execution. The package's lookup helper fails to properly validate templates, allowing attackers to submit templates that execute arbitrary JavaScript in the system. It is due to an incomplete fix for a previous issue. This vulnerability can be used to run arbitrary code in a server processing Handlebars templates or on a victim's browser (effectively serving as Cross-Site Scripting).
Recommendation
Upgrade to version 3.0.8, 4.5.3 or later.
- Record
GHSA-q2c6-c6pm-g3gh- Updated
- 2026-11-02
NVD 5.3
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.
- Record
CVE-2026-65902- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-501
- Updated
- 2026-11-02
OSV 5.3
DOMPurify before 3.4.7 Hook Mutation Pollution via allowedTags
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.
- Record
CVE-2026-65902- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N - Weakness
- CWE-501
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-65902 5.3
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.
- Record
DEBIAN-CVE-2026-65902- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Updated
- 2026-11-02
OSVGHSA-2cf5-4w76-r9qv 7.3
Arbitrary Code Execution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.2 are vulnerable to Arbitrary Code Execution. The package's lookup helper fails to properly validate templates, allowing attackers to submit templates that execute arbitrary JavaScript in the system. It can be used to run arbitrary code in a server processing Handlebars templates or on a victim's browser (effectively serving as Cross-Site Scripting).
The following template can be used to demonstrate the vulnerability:
{{#with split as |a|}}
{{pop (push "alert('Vulnerable Handlebars JS');")}}
{{#with (concat (lookup join (slice 0 1)))}}
{{#each (slice 2 3)}}
{{#with (apply 0 a)}}
{{.}}
{{/with}}
{{/each}}
{{/with}}
{{/with}}
{{/with}}```
## Recommendation
Upgrade to version 3.0.8, 4.5.2 or later.
- Record
GHSA-2cf5-4w76-r9qv- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:L/I:H/A:L - Weakness
- CWE-94
- Updated
- 2026-11-02
OSVGHSA-76mc-f452-cxcm 6.1
DOMPurify: Hook mutation of `data.allowedTags` / `data.allowedAttributes` permanently pollutes `DEFAULT_ALLOWED_TAGS` / `DEFAULT_ALLOWED_ATTR`
Hook mutation of data.allowedTags / data.allowedAttributes permanently pollutes DEFAULT_ALLOWED_TAGS / DEFAULT_ALLOWED_ATTR
CWE: CWE-501 (Trust Boundary Violation — hook-scoped mutation leaks to global default sets) via CWE-693 (Protection Mechanism Failure — the default allow-list is silently widened for all subsequent sanitize calls)
Summary
The data.allowedTags and data.allowedAttributes fields passed to uponSanitizeElement and uponSanitizeAttribute hooks are direct references to the library's live ALLOWED_TAGS / ALLOWED_ATTR sets. For sanitize calls that don't supply an explicit cfg.ALLOWED_TAGS / cfg.ALLOWED_ATTR array, those live sets are themselves direct references to the module-level DEFAULT_ALLOWED_TAGS / DEFAULT_ALLOWED_ATTR constants. A hook that mutates these fields — a natural-looking pattern for "allow X for this iteration" — permanently writes new entries into the default constants for the DOMPurify instance's lifetime. Every subsequent sanitize call that doesn't override the config inherits the widened defaults, so an attacker payload that uses the poisoned tag/attribute name survives sanitization. removeAllHooks(), clearConfig(), and even passing a fresh cfg: {} do not recover; only constructing a new DOMPurify instance does.
The maintainer's existing defense at src/purify.ts:696-700 explicitly clones DEFAULT_ALLOWED_TAGS before mutating it via cfg.ADD_TAGS (array form), demonstrating awareness of this exact class. The hook path remained uncovered.
Affected
- DOMPurify ≤ 3.4.5, including
mainat7996f1dc78eb8b7922388aed75d94a9f8fad9a36 - Any application that installs a hook on
uponSanitizeElementoruponSanitizeAttributethat writes todata.allowedTags[...] = trueordata.allowedAttributes[...] = trueand later sanitizes attacker-influenced content with default config (no explicitcfg.ALLOWED_TAGS/cfg.ALLOWED_ATTRarray)
Vulnerability details
[A] — data.allowedTags is a reference to ALLOWED_TAGS
src/purify.ts:1206-1209:
_executeHooks(hooks.uponSanitizeElement, currentNode, {
tagName,
allowedTags: ALLOWED_TAGS, // [A] direct reference; hook mutation
// mutates the very ALLOWED_TAGS the
// library checks on the next element
});
src/purify.ts:1494-1500 (the matching attribute hook):
const hookEvent = {
attrName: '',
attrValue: '',
keepAttr: true,
allowedAttributes: ALLOWED_ATTR, // [A'] same pattern
forceKeepAttr: undefined,
};
[B] — ALLOWED_TAGS = DEFAULT_ALLOWED_TAGS for default-cfg sanitize calls
src/purify.ts:527-531:
ALLOWED_TAGS =
objectHasOwnProperty(cfg, 'ALLOWED_TAGS') &&
arrayIsArray(cfg.ALLOWED_TAGS)
? addToSet({}, cfg.ALLOWED_TAGS, transformCaseFunc)
: DEFAULT_ALLOWED_TAGS; // [B] reference assignment; ALLOWED_TAGS
// IS the DEFAULT_ALLOWED_TAGS object
(The ALLOWED_ATTR = DEFAULT_ALLOWED_ATTR path at :532-536 is symmetric.)
The mismatch
A hook author who writes data.allowedTags['script'] = true reasonably expects per-call scope — the API name is "data", suggesting per-event payload. But [A] makes this a direct reference, and [B] makes that reference equal to the module-level default for the common default-cfg path. The hook's mutation therefore writes to a constant that every subsequent default-cfg sanitize call rebinds to.
The maintainer already recognized this class for the ADD_TAGS array path — src/purify.ts:696-700:
} else if (arrayIsArray(cfg.ADD_TAGS)) {
if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) {
ALLOWED_TAGS = clone(ALLOWED_TAGS); // explicitly clone DEFAULT before
// mutating to avoid this pollution
}
addToSet(ALLOWED_TAGS, cfg.ADD_TAGS, transformCaseFunc);
}
The same…
- Record
GHSA-76mc-f452-cxcm- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Weakness
- CWE-501, CWE-693
- Updated
- 2026-11-02
OSVGHSA-q42p-pg8m-cqh6 7.3
Prototype Pollution in handlebars
Versions of handlebars prior to 4.0.14 are vulnerable to Prototype Pollution. Templates may alter an Objects' prototype, thus allowing an attacker to execute arbitrary code on the server.
Recommendation
For handlebars 4.1.x upgrade to 4.1.2 or later. For handlebars 4.0.x upgrade to 4.0.14 or later.
- Record
GHSA-q42p-pg8m-cqh6- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-471
- Updated
- 2026-11-02
OSVRHSA-2026:58500 6.1
Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update
- Record
RHSA-2026:58500- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Updated
- 2026-11-02
OSVRHSA-2026:58502 6.1
Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update
- Record
RHSA-2026:58502- CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-65902 5.3
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.
- Record
UBUNTU-CVE-2026-65902- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N - CVSS 3.1
- 6.1 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - Updated
- 2026-11-05
OSVCLSA-2026-1774743817No score
TuxCare security update for handlebars (1 CVE)
TuxCare rebuilt handlebars to address 1 CVE. Fixed in 1.3.0-tuxcare.1.
- Record
CLSA-2026-1774743817- Updated
- 2026-11-02
OSVCLSA-2026-1774743830No score
TuxCare security update for handlebars (3 CVEs)
TuxCare rebuilt handlebars to address 3 CVEs. Fixed in 1.0.12-tuxcare.2.
- Record
CLSA-2026-1774743830- Updated
- 2026-11-02
OSVCLSA-2026-1784509816No score
TuxCare security update for dompurify (5 CVEs)
TuxCare rebuilt dompurify to address 5 CVEs. Fixed in 2.5.8-tuxcare.4.
- Record
CLSA-2026-1784509816- Updated
- 2026-11-02
OSVCLSA-2026-1784596279No score
TuxCare security update for dompurify (7 CVEs)
TuxCare rebuilt dompurify to address 7 CVEs. Fixed in 3.0.3-tuxcare.2.
- Record
CLSA-2026-1784596279- Updated
- 2026-11-02
OSVCLSA-2026-1784596306No score
TuxCare security update for dompurify (3 CVEs)
TuxCare rebuilt dompurify to address 3 CVEs. Fixed in 2.5.9-tuxcare.4.
- Record
CLSA-2026-1784596306- Updated
- 2026-11-02
OSVCLSA-2026-1784682987No score
TuxCare security update for dompurify (8 CVEs)
TuxCare rebuilt dompurify to address 8 CVEs. Fixed in 3.2.3-tuxcare.2.
- Record
CLSA-2026-1784682987- Updated
- 2026-11-02
OSVCLSA-2026-1784856439No score
TuxCare security update for dompurify (2 CVEs)
TuxCare rebuilt dompurify to address 2 CVEs. Fixed in 2.4.7-tuxcare.4.
- Record
CLSA-2026-1784856439- Updated
- 2026-11-02
OSVCLSA-2026-1786539981No score
TuxCare security update for dompurify (10 CVEs)
TuxCare rebuilt dompurify to address 10 CVEs. Fixed in 2.3.0-tuxcare.1.
- Record
CLSA-2026-1786539981- Updated
- 2026-11-02
OSVCLSA-2026-1786636600No score
TuxCare security update for dompurify (16 CVEs)
TuxCare rebuilt dompurify to address 16 CVEs. Fixed in 2.4.0-tuxcare.1.
- Record
CLSA-2026-1786636600- Updated
- 2026-11-02
OSVCLSA-2026-1786636613No score
TuxCare security update for dompurify (11 CVEs)
TuxCare rebuilt dompurify to address 11 CVEs. Fixed in 2.4.3-tuxcare.1.
- Record
CLSA-2026-1786636613- Updated
- 2026-11-02
OSVCLSA-2026-1786636721No score
TuxCare security update for dompurify (14 CVEs)
TuxCare rebuilt dompurify to address 14 CVEs. Fixed in 2.4.7-tuxcare.1.
- Record
CLSA-2026-1786636721- Updated
- 2026-11-02
OSVCLSA-2026-1786731853No score
TuxCare security update for dompurify (10 CVEs)
TuxCare rebuilt dompurify to address 10 CVEs. Fixed in 3.2.3-tuxcare.3.
- Record
CLSA-2026-1786731853- Updated
- 2026-11-02
OSVCLSA-2026-1786731948No score
TuxCare security update for dompurify (34 CVEs)
TuxCare rebuilt dompurify to address 34 CVEs. Fixed in 3.0.3-tuxcare.1.
- Record
CLSA-2026-1786731948- Updated
- 2026-11-02
OSVCLSA-2026-1786731971No score
TuxCare security update for dompurify (7 CVEs)
TuxCare rebuilt dompurify to address 7 CVEs. Fixed in 3.1.6-tuxcare.7.
- Record
CLSA-2026-1786731971- Updated
- 2026-11-02
OSVCLSA-2026-1789152222No score
TuxCare security update for dompurify (11 CVEs)
TuxCare rebuilt dompurify to address 11 CVEs. Fixed in 2.3.0-tuxcare.5.
- Record
CLSA-2026-1789152222- Updated
- 2026-11-02
OSVCLSA-2026-1789153936No score
TuxCare security update for dompurify (9 CVEs)
TuxCare rebuilt dompurify to address 9 CVEs. Fixed in 2.4.0-tuxcare.5.
- Record
CLSA-2026-1789153936- Updated
- 2026-11-02
OSVCLSA-2026-1789154068No score
TuxCare security update for dompurify (12 CVEs)
TuxCare rebuilt dompurify to address 12 CVEs. Fixed in 3.0.3-tuxcare.5.
- Record
CLSA-2026-1789154068- Updated
- 2026-11-02
OSVCLSA-2026-1789154458No score
TuxCare security update for dompurify (9 CVEs)
TuxCare rebuilt dompurify to address 9 CVEs. Fixed in 2.4.7-tuxcare.5.
- Record
CLSA-2026-1789154458- Updated
- 2026-11-02
OSVCLSA-2026-1789155659No score
TuxCare security update for dompurify (12 CVEs)
TuxCare rebuilt dompurify to address 12 CVEs. Fixed in 2.4.3-tuxcare.8.
- Record
CLSA-2026-1789155659- Updated
- 2026-11-02
OSVCLSA-2026-1789400953No score
TuxCare security update for dompurify (4 CVEs)
TuxCare rebuilt dompurify to address 4 CVEs. Fixed in 3.2.7-tuxcare.3.
- Record
CLSA-2026-1789400953- Updated
- 2026-11-02
OSVCLSA-2026-1792424339No score
TuxCare security update for dompurify (10 CVEs)
TuxCare rebuilt dompurify to address 10 CVEs. Fixed in 2.0.8-tuxcare.3.
- Record
CLSA-2026-1792424339- Updated
- 2026-11-02
OSVCLSA-2026-1792424449No score
TuxCare security update for dompurify (12 CVEs)
TuxCare rebuilt dompurify to address 12 CVEs. Fixed in 2.3.3-tuxcare.3.
- Record
CLSA-2026-1792424449- Updated
- 2026-11-05
OSVCLSA-2026-1792424561No score
TuxCare security update for dompurify (9 CVEs)
TuxCare rebuilt dompurify to address 9 CVEs. Fixed in 3.3.3-tuxcare.3.
- Record
CLSA-2026-1792424561- Updated
- 2026-11-02
OSVCLSA-2026-1792424669No score
TuxCare security update for dompurify (9 CVEs)
TuxCare rebuilt dompurify to address 9 CVEs. Fixed in 3.2.6-tuxcare.3.
- Record
CLSA-2026-1792424669- Updated
- 2026-11-02
OSVCLSA-2026-1792424891No score
TuxCare security update for dompurify (13 CVEs)
TuxCare rebuilt dompurify to address 13 CVEs. Fixed in 2.3.10-tuxcare.3.
- Record
CLSA-2026-1792424891- Updated
- 2026-11-02
OSVCLSA-2026-1792486117No score
TuxCare security update for dompurify (10 CVEs)
TuxCare rebuilt dompurify to address 10 CVEs. Fixed in 3.0.1-tuxcare.3.
- Record
CLSA-2026-1792486117- Updated
- 2026-11-02
OSVCLSA-2026-1792486395No score
TuxCare security update for dompurify (4 CVEs)
TuxCare rebuilt dompurify to address 4 CVEs. Fixed in 3.4.5-tuxcare.3.
- Record
CLSA-2026-1792486395- Updated
- 2026-11-02
OSVCLSA-2026-1792486837No score
TuxCare security update for dompurify (10 CVEs)
TuxCare rebuilt dompurify to address 10 CVEs. Fixed in 3.0.2-tuxcare.3.
- Record
CLSA-2026-1792486837- Updated
- 2026-11-02
OSVCLSA-2026-1792495646No score
TuxCare security update for dompurify (8 CVEs)
TuxCare rebuilt dompurify to address 8 CVEs. Fixed in 3.0.8-tuxcare.3.
- Record
CLSA-2026-1792495646- Updated
- 2026-11-02
OSVCLSA-2026-1792495764No score
TuxCare security update for dompurify (4 CVEs)
TuxCare rebuilt dompurify to address 4 CVEs. Fixed in 3.4.6-tuxcare.3.
- Record
CLSA-2026-1792495764- Updated
- 2026-11-02
OSVCLSA-2026-1792496766No score
TuxCare security update for dompurify (9 CVEs)
TuxCare rebuilt dompurify to address 9 CVEs. Fixed in 3.0.9-tuxcare.3.
- Record
CLSA-2026-1792496766- Updated
- 2026-11-02
OSVCLSA-2026-1792496994No score
TuxCare security update for dompurify (7 CVEs)
TuxCare rebuilt dompurify to address 7 CVEs. Fixed in 3.0.11-tuxcare.3.
- Record
CLSA-2026-1792496994- Updated
- 2026-11-02
OSVCLSA-2026-1792498640No score
TuxCare security update for dompurify (6 CVEs)
TuxCare rebuilt dompurify to address 6 CVEs. Fixed in 3.1.0-tuxcare.3.
- Record
CLSA-2026-1792498640- Updated
- 2026-11-02
OSVCLSA-2026-1792593858No score
TuxCare security update for dompurify (8 CVEs)
TuxCare rebuilt dompurify to address 8 CVEs. Fixed in 3.1.3-tuxcare.3.
- Record
CLSA-2026-1792593858- Updated
- 2026-11-02
OSVCLSA-2026-1792593965No score
TuxCare security update for dompurify (10 CVEs)
TuxCare rebuilt dompurify to address 10 CVEs. Fixed in 3.1.2-tuxcare.3.
- Record
CLSA-2026-1792593965- Updated
- 2026-11-02
OSVCLSA-2026-1792594075No score
TuxCare security update for dompurify (11 CVEs)
TuxCare rebuilt dompurify to address 11 CVEs. Fixed in 3.1.1-tuxcare.3.
- Record
CLSA-2026-1792594075- Updated
- 2026-11-02
OSVCLSA-2026-1792594185No score
TuxCare security update for dompurify (8 CVEs)
TuxCare rebuilt dompurify to address 8 CVEs. Fixed in 3.1.4-tuxcare.3.
- Record
CLSA-2026-1792594185- Updated
- 2026-11-02
OSVCLSA-2026-1792933945No score
TuxCare security update for dompurify (12 CVEs)
TuxCare rebuilt dompurify to address 12 CVEs. Fixed in 3.4.0-tuxcare.1.
- Record
CLSA-2026-1792933945- Updated
- 2026-11-02
OSVCLSA-2026-1793287856No score
TuxCare security update for dompurify (3 CVEs)
TuxCare rebuilt dompurify to address 3 CVEs. Fixed in 3.0.6-tuxcare.8.
- Record
CLSA-2026-1793287856- Updated
- 2026-11-02
OSVCLSA-2026-1793287970No score
TuxCare security update for dompurify (3 CVEs)
TuxCare rebuilt dompurify to address 3 CVEs. Fixed in 3.0.4-tuxcare.5.
- Record
CLSA-2026-1793287970- Updated
- 2026-11-02
OSVCLSA-2026-1793288086No score
TuxCare security update for dompurify (3 CVEs)
TuxCare rebuilt dompurify to address 3 CVEs. Fixed in 3.0.5-tuxcare.5.
- Record
CLSA-2026-1793288086- Updated
- 2026-11-02
OSVGHSA-g9r4-xpmj-mj65No score
Prototype Pollution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.3 are vulnerable to prototype pollution. It is possible to add or modify properties to the Object prototype through a malicious template. This may allow attackers to crash the application or execute Arbitrary Code in specific conditions.
Recommendation
Upgrade to version 3.0.8, 4.5.3 or later.
- Record
GHSA-g9r4-xpmj-mj65- Weakness
- CWE-1321
- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
handlebarsnpm | before 3.0.8 | 3.0.8 |
handlebarsnpm | 4.0.0 up to 4.5.2 | 4.5.2 |
dompurifynpm | before 3.4.7 | 3.4.7 |
handlebarsnpm | 4.0.0 up to 4.5.3 | 4.5.3 |
handlebarsnpm | 4.1.0 up to 4.1.2 | 4.1.2 |
handlebarsnpm | 4.0.0 up to 4.0.14 | 4.0.14 |
handlebarsnpm | before 3.0.7 | 3.0.7 |
handlebarsTuxCare:npm | 1.3.0-tuxcare.0 up to 1.3.0-tuxcare.1, plus listed versions 1.3.0 | 1.3.0-tuxcare.1 |
handlebarsTuxCare:npm | 1.0.12-tuxcare.0 up to 1.0.12-tuxcare.2, plus listed versions 1.0.121.0.12-tuxcare.1 | 1.0.12-tuxcare.2 |
dompurifyTuxCare:npm From an advisory covering 2 CVEs | 2.5.8-tuxcare.0 up to 2.5.8-tuxcare.4, plus listed versions 2.5.82.5.8-tuxcare.12.5.8-tuxcare.22.5.8-tuxcare.3 | 2.5.8-tuxcare.4 |
Show 47 moreShow less
| Package | Affected | Fixed |
|---|---|---|
dompurifyTuxCare:npm From an advisory covering 2 CVEs | 3.0.3-tuxcare.0 up to 3.0.3-tuxcare.2, plus listed versions 3.0.33.0.3-tuxcare.1 | 3.0.3-tuxcare.2 |
dompurifyTuxCare:npm | 2.5.9-tuxcare.0 up to 2.5.9-tuxcare.4, plus listed versions 2.5.92.5.9-tuxcare.12.5.9-tuxcare.22.5.9-tuxcare.3 | 2.5.9-tuxcare.4 |
dompurifyTuxCare:npm From an advisory covering 2 CVEs | 3.2.3-tuxcare.0 up to 3.2.3-tuxcare.2, plus listed versions 3.2.33.2.3-tuxcare.1 | 3.2.3-tuxcare.2 |
dompurifyTuxCare:npm | 2.4.7-tuxcare.0 up to 2.4.7-tuxcare.4, plus listed versions 2.4.72.4.7-tuxcare.12.4.7-tuxcare.22.4.7-tuxcare.3 | 2.4.7-tuxcare.4 |
dompurifyTuxCare:npm From an advisory covering 9 CVEs | 3.2.3-tuxcare.0 up to 3.2.3-tuxcare.3, plus listed versions 3.2.33.2.3-tuxcare.13.2.3-tuxcare.2 | 3.2.3-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 6 CVEs | 3.1.6-tuxcare.0 up to 3.1.6-tuxcare.7, plus listed versions 3.1.63.1.6-tuxcare.13.1.6-tuxcare.23.1.6-tuxcare.33.1.6-tuxcare.43.1.6-tuxcare.53.1.6-tuxcare.6 | 3.1.6-tuxcare.7 |
dompurifyTuxCare:npm From an advisory covering 10 CVEs | 2.3.0-tuxcare.0 up to 2.3.0-tuxcare.5, plus listed versions 2.3.02.3.0-tuxcare.12.3.0-tuxcare.22.3.0-tuxcare.32.3.0-tuxcare.4 | 2.3.0-tuxcare.5 |
dompurifyTuxCare:npm From an advisory covering 8 CVEs | 2.4.0-tuxcare.0 up to 2.4.0-tuxcare.5, plus listed versions 2.4.02.4.0-tuxcare.12.4.0-tuxcare.22.4.0-tuxcare.32.4.0-tuxcare.4 | 2.4.0-tuxcare.5 |
dompurifyTuxCare:npm From an advisory covering 11 CVEs | 3.0.3-tuxcare.0 up to 3.0.3-tuxcare.5, plus listed versions 3.0.33.0.3-tuxcare.13.0.3-tuxcare.23.0.3-tuxcare.33.0.3-tuxcare.4 | 3.0.3-tuxcare.5 |
dompurifyTuxCare:npm From an advisory covering 8 CVEs | 2.4.7-tuxcare.0 up to 2.4.7-tuxcare.5, plus listed versions 2.4.72.4.7-tuxcare.12.4.7-tuxcare.22.4.7-tuxcare.32.4.7-tuxcare.4 | 2.4.7-tuxcare.5 |
dompurifyTuxCare:npm From an advisory covering 11 CVEs | 2.4.3-tuxcare.0 up to 2.4.3-tuxcare.8, plus listed versions 2.4.32.4.3-tuxcare.12.4.3-tuxcare.22.4.3-tuxcare.32.4.3-tuxcare.42.4.3-tuxcare.52.4.3-tuxcare.62.4.3-tuxcare.7 | 2.4.3-tuxcare.8 |
dompurifyTuxCare:npm From an advisory covering 4 CVEs | 3.2.7-tuxcare.0 up to 3.2.7-tuxcare.3, plus listed versions 3.2.73.2.7-tuxcare.13.2.7-tuxcare.2 | 3.2.7-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 10 CVEs | 2.0.8-tuxcare.0 up to 2.0.8-tuxcare.3, plus listed versions 2.0.82.0.8-tuxcare.12.0.8-tuxcare.2 | 2.0.8-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 12 CVEs | 2.3.3-tuxcare.0 up to 2.3.3-tuxcare.3, plus listed versions 2.3.32.3.3-tuxcare.12.3.3-tuxcare.2 | 2.3.3-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 9 CVEs | 3.3.3-tuxcare.0 up to 3.3.3-tuxcare.3, plus listed versions 3.3.33.3.3-tuxcare.13.3.3-tuxcare.2 | 3.3.3-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 9 CVEs | 3.2.6-tuxcare.0 up to 3.2.6-tuxcare.3, plus listed versions 3.2.63.2.6-tuxcare.13.2.6-tuxcare.2 | 3.2.6-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 13 CVEs | 2.3.10-tuxcare.0 up to 2.3.10-tuxcare.3, plus listed versions 2.3.102.3.10-tuxcare.12.3.10-tuxcare.2 | 2.3.10-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 10 CVEs | 3.0.1-tuxcare.0 up to 3.0.1-tuxcare.3, plus listed versions 3.0.13.0.1-tuxcare.13.0.1-tuxcare.2 | 3.0.1-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 4 CVEs | 3.4.5-tuxcare.0 up to 3.4.5-tuxcare.3, plus listed versions 3.4.53.4.5-tuxcare.13.4.5-tuxcare.2 | 3.4.5-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 10 CVEs | 3.0.2-tuxcare.0 up to 3.0.2-tuxcare.3, plus listed versions 3.0.23.0.2-tuxcare.13.0.2-tuxcare.2 | 3.0.2-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 8 CVEs | 3.0.8-tuxcare.0 up to 3.0.8-tuxcare.3, plus listed versions 3.0.83.0.8-tuxcare.13.0.8-tuxcare.2 | 3.0.8-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 4 CVEs | 3.4.6-tuxcare.0 up to 3.4.6-tuxcare.3, plus listed versions 3.4.63.4.6-tuxcare.13.4.6-tuxcare.2 | 3.4.6-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 9 CVEs | 3.0.9-tuxcare.0 up to 3.0.9-tuxcare.3, plus listed versions 3.0.93.0.9-tuxcare.13.0.9-tuxcare.2 | 3.0.9-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 7 CVEs | 3.0.11-tuxcare.0 up to 3.0.11-tuxcare.3, plus listed versions 3.0.113.0.11-tuxcare.13.0.11-tuxcare.2 | 3.0.11-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 6 CVEs | 3.1.0-tuxcare.0 up to 3.1.0-tuxcare.3, plus listed versions 3.1.03.1.0-tuxcare.13.1.0-tuxcare.2 | 3.1.0-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 8 CVEs | 3.1.3-tuxcare.0 up to 3.1.3-tuxcare.3, plus listed versions 3.1.33.1.3-tuxcare.13.1.3-tuxcare.2 | 3.1.3-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 10 CVEs | 3.1.2-tuxcare.0 up to 3.1.2-tuxcare.3, plus listed versions 3.1.23.1.2-tuxcare.13.1.2-tuxcare.2 | 3.1.2-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 11 CVEs | 3.1.1-tuxcare.0 up to 3.1.1-tuxcare.3, plus listed versions 3.1.13.1.1-tuxcare.13.1.1-tuxcare.2 | 3.1.1-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 8 CVEs | 3.1.4-tuxcare.0 up to 3.1.4-tuxcare.3, plus listed versions 3.1.43.1.4-tuxcare.13.1.4-tuxcare.2 | 3.1.4-tuxcare.3 |
dompurifyTuxCare:npm From an advisory covering 9 CVEs | 3.4.0-tuxcare.0 up to 3.4.0-tuxcare.1, plus listed versions 3.4.0 | 3.4.0-tuxcare.1 |
dompurifyTuxCare:npm From an advisory covering 3 CVEs | 3.0.6-tuxcare.0 up to 3.0.6-tuxcare.8, plus listed versions 3.0.63.0.6-tuxcare.13.0.6-tuxcare.23.0.6-tuxcare.33.0.6-tuxcare.43.0.6-tuxcare.53.0.6-tuxcare.63.0.6-tuxcare.7 | 3.0.6-tuxcare.8 |
dompurifyTuxCare:npm From an advisory covering 3 CVEs | 3.0.4-tuxcare.0 up to 3.0.4-tuxcare.5, plus listed versions 3.0.43.0.4-tuxcare.13.0.4-tuxcare.23.0.4-tuxcare.33.0.4-tuxcare.4 | 3.0.4-tuxcare.5 |
dompurifyTuxCare:npm From an advisory covering 3 CVEs | 3.0.5-tuxcare.0 up to 3.0.5-tuxcare.5, plus listed versions 3.0.53.0.5-tuxcare.13.0.5-tuxcare.23.0.5-tuxcare.33.0.5-tuxcare.4 | 3.0.5-tuxcare.5 |
node-dompurifyDebian:12 | All versions, plus listed versions 2.4.1+dfsg+~2.4.0-12.4.1+dfsg+~2.4.0-22.4.1+dfsg+~2.4.0-2+deb12u13.0.9+dfsg+~3.0.5-13.1.6+dfsg+~3.0.5-1 Show 14 moreShow less3.1.7+dfsg+~3.0.5-13.1.7+dfsg+~3.0.5-23.2.5+dfsg-13.3.2+dfsg-13.3.3+dfsg-13.3.3+dfsg-23.4.1+dfsg-13.4.12+dfsg-13.4.13+dfsg-13.4.13+dfsg-23.4.16+dfsg-13.4.17+dfsg-13.4.2+dfsg-13.4.5+dfsg-1 | None known |
node-dompurifyDebian:13 | All versions, plus listed versions 3.1.7+dfsg+~3.0.5-23.2.5+dfsg-13.3.2+dfsg-13.3.3+dfsg-13.3.3+dfsg-2 Show 8 moreShow less3.4.1+dfsg-13.4.12+dfsg-13.4.13+dfsg-13.4.13+dfsg-23.4.16+dfsg-13.4.17+dfsg-13.4.2+dfsg-13.4.5+dfsg-1 | None known |
node-dompurifyDebian:14 | before 3.4.12+dfsg-1, plus listed versions 3.1.7+dfsg+~3.0.5-23.2.5+dfsg-13.3.2+dfsg-13.3.3+dfsg-13.3.3+dfsg-23.4.1+dfsg-13.4.2+dfsg-13.4.5+dfsg-1 | 3.4.12+dfsg-1 |
grafana12.4Red Hat:hummingbird:1 From an advisory covering 8 CVEs | before 0:12.4.8-0.1.2.hum1 | 0:12.4.8-0.1.2.hum1 |
grafana13.1Red Hat:hummingbird:1 From an advisory covering 4 CVEs | before 0:13.1.3-0.1.3.hum1 | 0:13.1.3-0.1.3.hum1 |
dompurifyRoot:npm | before 2.5.8-aikido.3 | 2.5.8-aikido.33.4.6-aikido.22.5.9-aikido.43.2.4-aikido.42.5.9-aikido.53.2.4-aikido.53.4.7-aikido.12.5.9-aikido.23.2.4-aikido.22.5.9-aikido.33.2.4-aikido.32.5.8-aikido.23.4.0-aikido.13.4.6-aikido.13.4.5-aikido.13.4.2-aikido.2 |
@rootio/dompurifyRoot:npm | before 2.5.8-root.io.3 | 2.5.8-root.io.33.4.6-root.io.22.5.9-root.io.43.2.4-root.io.42.5.9-root.io.53.2.4-root.io.53.4.7-root.io.12.5.9-root.io.23.2.4-root.io.22.5.9-root.io.33.2.4-root.io.32.5.8-root.io.23.4.0-root.io.13.4.6-root.io.13.4.5-root.io.13.4.2-root.io.2 |
handlebarsRoot:npm | before 3.0.7-aikido.3 | 3.0.7-aikido.33.0.3-aikido.23.0.8-aikido.13.0.8-aikido.2 |
@rootio/handlebarsRoot:npm | before 3.0.7-root.io.3 | 3.0.7-root.io.33.0.3-root.io.23.0.8-root.io.13.0.8-root.io.2 |
handlebarsRoot:npm | before 3.0.3-aikido.2 | 3.0.3-aikido.23.0.7-aikido.13.0.7-aikido.23.0.7-aikido.3 |
@rootio/handlebarsRoot:npm | before 3.0.3-root.io.2 | 3.0.3-root.io.23.0.7-root.io.13.0.7-root.io.23.0.7-root.io.3 |
node-dompurifyUbuntu:22.04:LTS | All versions, plus listed versions 2.3.0+dfsg-22.3.3+dfsg-1 | None known |
node-dompurifyUbuntu:24.04:LTS | All versions, plus listed versions 2.4.1+dfsg+~2.4.0-13.0.9+dfsg+~3.0.5-1 | None known |
node-dompurifyUbuntu:26.04:LTS | All versions, plus listed versions 3.1.7+dfsg+~3.0.5-23.3.3+dfsg-1 | None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, aliases, cwes, references | ||
| affected | ||
| facts | OSV | |
| affected | ||
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-65902 is a medium vulnerability (CVSS 5.3) in Cure53 Dompurify, published June 5, 2019. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.36%, the 29th percentile. Fixed in handlebars 3.0.8.
References
github.com/cure53/DOMPurify/security/advisories/GHSA-76mc-f452-cxcm
github.com/cure53/DOMPurify/commit/7996f1dc78eb8b7922388aed75d94a9f8fad9a36
vulncheck.com/advisories/dompurify-before-hook-mutation-pollution-via-allowedtags
npmjs.com/advisories/1316
github.com/advisories/GHSA-2cf5-4w76-r9qv
github.com/advisories/GHSA-76mc-f452-cxcm
Show 69 moreShow less
npmjs.com/advisories/1325
github.com/advisories/GHSA-g9r4-xpmj-mj65
npmjs.com/advisories/1324
github.com/advisories/GHSA-q2c6-c6pm-g3gh
github.com/handlebars-lang/handlebars.js/issues/1495
github.com/handlebars-lang/handlebars.js/commit/7372d4e9dffc9d70c09671aa28b9392a1577fd86
snyk.io/vuln/SNYK-JS-HANDLEBARS-173692
npmjs.com/advisories/755
github.com/handlebars-lang/handlebars.js/commit/0d6d8c335ad81bad1b672fc56b6a44f6aa472dac
github.com/handlebars-lang/handlebars.js/commit/85c8783b34fc6d36145d8b53885ad0b9e3c3f9c4
github.com/handlebars-lang/handlebars.js/commit/cd38583216dce3252831916323202749431c773e
github.com/advisories/GHSA-q42p-pg8m-cqh6
github.com/CVEProject/cvelistV5/tree/main/cves/2026/65xxx/CVE-2026-65902.json
nvd.nist.gov/vuln/detail/CVE-2026-65902
security-tracker.debian.org/tracker/CVE-2026-65902
github.com/cure53/DOMPurify
access.redhat.com/errata/RHSA-2026:58500
access.redhat.com/security/cve/CVE-2026-65898
access.redhat.com/security/cve/CVE-2026-65899
access.redhat.com/security/cve/CVE-2026-65901
access.redhat.com/security/cve/CVE-2026-65902
access.redhat.com/security/cve/CVE-2026-65911
access.redhat.com/security/cve/CVE-2026-65912
access.redhat.com/security/cve/CVE-2026-65913
access.redhat.com/security/cve/CVE-2026-65914
access.redhat.com/security/updates/classification
images.redhat.com
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_58500.json
bugzilla.redhat.com/show_bug.cgi?id=2506436
cve.org/CVERecord?id=CVE-2026-65898
nvd.nist.gov/vuln/detail/CVE-2026-65898
github.com/cure53/DOMPurify/security/advisories/GHSA-cmwh-pvxp-8882
vulncheck.com/advisories/dompurify-before-permanent-attribute-allowlist-pollution-via-setconfig
bugzilla.redhat.com/show_bug.cgi?id=2506428
cve.org/CVERecord?id=CVE-2026-65899
nvd.nist.gov/vuln/detail/CVE-2026-65899
github.com/cure53/DOMPurify/commit/825e617753ac1169306a542d3174a77f717a0cf6
github.com/cure53/DOMPurify/security/advisories/GHSA-vxr8-fq34-vvx9
vulncheck.com/advisories/dompurify-before-trusted-types-policy-state-contamination
bugzilla.redhat.com/show_bug.cgi?id=2506432
cve.org/CVERecord?id=CVE-2026-65901
nvd.nist.gov/vuln/detail/CVE-2026-65901
github.com/cure53/DOMPurify/security/advisories/GHSA-x4vx-rjvf-j5p4
vulncheck.com/advisories/dompurify-cross-site-scripting-via-in-place-nodename
bugzilla.redhat.com/show_bug.cgi?id=2506431
cve.org/CVERecord?id=CVE-2026-65902
bugzilla.redhat.com/show_bug.cgi?id=2506434
cve.org/CVERecord?id=CVE-2026-65911
nvd.nist.gov/vuln/detail/CVE-2026-65911
github.com/cure53/DOMPurify/security/advisories/GHSA-9p3w-6h5p-cv75
vulncheck.com/advisories/dompurify-before-xss-via-add-attr-add-tags-state-leakage
bugzilla.redhat.com/show_bug.cgi?id=2506427
cve.org/CVERecord?id=CVE-2026-65912
nvd.nist.gov/vuln/detail/CVE-2026-65912
github.com/cure53/DOMPurify/security/advisories/GHSA-cjmm-f4jc-qw8r
vulncheck.com/advisories/dompurify-before-uri-validation-bypass-via-add-attr
bugzilla.redhat.com/show_bug.cgi?id=2506429
cve.org/CVERecord?id=CVE-2026-65913
nvd.nist.gov/vuln/detail/CVE-2026-65913
github.com/cure53/DOMPurify/security/advisories/GHSA-cj63-jhhr-wcxv
vulncheck.com/advisories/dompurify-before-prototype-pollution-via-use-profiles
bugzilla.redhat.com/show_bug.cgi?id=2506430
cve.org/CVERecord?id=CVE-2026-65914
nvd.nist.gov/vuln/detail/CVE-2026-65914
github.com/cure53/DOMPurify/security/advisories/GHSA-h8r8-wccr-v5f2
vulncheck.com/advisories/dompurify-before-mutation-xss-via-re-contextualization
access.redhat.com/errata/RHSA-2026:58502
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_58502.json
ubuntu.com/security/CVE-2026-65902
Left out here: the rest of 2 source descriptions. The JSON record has them. Left out on purpose, here and in the API, to keep responses small: 7 source records.