Lookup for vulnerabilities affecting packages.

Vulnerability_idVCID-q79q-8yzx-p3f6
Summary
Mermaid improperly sanitizes sequence diagram labels leading to XSS
### Summary
In the default configuration of mermaid 11.9.0, user supplied input for sequence diagram labels is passed to `innerHTML` during calculation of element size, causing XSS.

### Details
Sequence diagram node labels with KaTeX delimiters are passed through `calculateMathMLDimensions`. This method passes the full label to `innerHTML` which allows allows malicious users to inject arbitrary HTML and cause XSS when mermaid-js is used in it's default configuration (with KaTeX support enabled). 

The vulnerability lies here:

```ts
export const calculateMathMLDimensions = async (text: string, config: MermaidConfig) => {
  text = await renderKatex(text, config);
  const divElem = document.createElement('div');
  divElem.innerHTML = text; // XSS sink, text has not been sanitized.
  divElem.id = 'katex-temp';
  divElem.style.visibility = 'hidden';
  divElem.style.position = 'absolute';
  divElem.style.top = '0';
  const body = document.querySelector('body');
  body?.insertAdjacentElement('beforeend', divElem);
  const dim = { width: divElem.clientWidth, height: divElem.clientHeight };
  divElem.remove();
  return dim;
};
```

The `calculateMathMLDimensions` method was introduced in 5c69e5fdb004a6d0a2abe97e23d26e223a059832 two years ago, which was released in [Mermaid 10.9.0](https://github.com/mermaid-js/mermaid/releases/tag/v10.9.0).

### PoC
Render the following diagram and observe the modified DOM.

```
sequenceDiagram
    participant A as Alice<img src="x" onerror="document.write(`xss on ${document.domain}`)">$$\\text{Alice}$$
    A->>John: Hello John, how are you?
    Alice-)John: See you later!
```

Here is a PoC on mermaid.live: https://mermaid.live/edit#pako:eNpVUMtOwzAQ_BWzyoFKaRTyaFILiio4IK7ckA-1km1iKbaLY6spUf4dJ0AF68uOZ2dm7REqXSNQ6PHDoarwWfDGcMkUudaJGysqceLKkj3hPdl3osJ7IRvSm-qBwcCAaIXGaONRrSsnUdnobITF28PQ954lwXglai25UNNhxWAXBMyXxcGOi-3kL_5k79e73atuFSUv2HWazH1IWn0m3CC5aPf4b3p2WK--BW-4DJCOWzQ3TM0HQmiMqIFa4zAEicZv4iGMsw0D26JEBtS3NR656ywDpiYv869_11r-Ko12TQv0yLveI3eqfcjP111HUNVonrRTFuhdsVgAHWEAmuRxlG7SuEzKMi-yJAnhAjTLIk_EcbFJtuk2y9MphM8lM47KIp--AOZghtU

### Impact
XSS on all sites that use mermaid and render user supplied diagrams without further sanitization.

### Remediation
The value of the `text` argument for the `calculateMathMLDimensions` method needs to be sanitized before getting passed on to `innerHTML`.
Aliases
0
alias CVE-2025-54881
1
alias GHSA-7rqq-prvp-x9jh
Fixed_packages
0
url pkg:deb/debian/node-mermaid@0?distro=bullseye
purl pkg:deb/debian/node-mermaid@0?distro=bullseye
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:deb/debian/node-mermaid@0%3Fdistro=bullseye
1
url pkg:deb/debian/node-mermaid@8.7.0%2Bds%2B~cs27.17.17-3%2Bdeb11u2?distro=bullseye
purl pkg:deb/debian/node-mermaid@8.7.0%2Bds%2B~cs27.17.17-3%2Bdeb11u2?distro=bullseye
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:deb/debian/node-mermaid@8.7.0%252Bds%252B~cs27.17.17-3%252Bdeb11u2%3Fdistro=bullseye
2
url pkg:npm/mermaid@10.9.4
purl pkg:npm/mermaid@10.9.4
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@10.9.4
3
url pkg:npm/mermaid@11.10.0
purl pkg:npm/mermaid@11.10.0
is_vulnerable false
affected_by_vulnerabilities
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.10.0
Affected_packages
0
url pkg:npm/mermaid@10.9.0-rc.1
purl pkg:npm/mermaid@10.9.0-rc.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-fwuk-z3uk-1ygf
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@10.9.0-rc.1
1
url pkg:npm/mermaid@10.9.0-rc.2
purl pkg:npm/mermaid@10.9.0-rc.2
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-fwuk-z3uk-1ygf
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@10.9.0-rc.2
2
url pkg:npm/mermaid@10.9.0
purl pkg:npm/mermaid@10.9.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-fwuk-z3uk-1ygf
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@10.9.0
3
url pkg:npm/mermaid@10.9.1
purl pkg:npm/mermaid@10.9.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-fwuk-z3uk-1ygf
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@10.9.1
4
url pkg:npm/mermaid@10.9.2
purl pkg:npm/mermaid@10.9.2
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-fwuk-z3uk-1ygf
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@10.9.2
5
url pkg:npm/mermaid@10.9.3
purl pkg:npm/mermaid@10.9.3
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@10.9.3
6
url pkg:npm/mermaid@11.0.0-alpha.1
purl pkg:npm/mermaid@11.0.0-alpha.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.0-alpha.1
7
url pkg:npm/mermaid@11.0.0-alpha.2
purl pkg:npm/mermaid@11.0.0-alpha.2
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.0-alpha.2
8
url pkg:npm/mermaid@11.0.0-alpha.3
purl pkg:npm/mermaid@11.0.0-alpha.3
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.0-alpha.3
9
url pkg:npm/mermaid@11.0.0-alpha.4
purl pkg:npm/mermaid@11.0.0-alpha.4
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.0-alpha.4
10
url pkg:npm/mermaid@11.0.0-alpha.5
purl pkg:npm/mermaid@11.0.0-alpha.5
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.0-alpha.5
11
url pkg:npm/mermaid@11.0.0-alpha.6
purl pkg:npm/mermaid@11.0.0-alpha.6
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.0-alpha.6
12
url pkg:npm/mermaid@11.0.0-alpha.7
purl pkg:npm/mermaid@11.0.0-alpha.7
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.0-alpha.7
13
url pkg:npm/mermaid@11.0.0
purl pkg:npm/mermaid@11.0.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.0
14
url pkg:npm/mermaid@11.0.1
purl pkg:npm/mermaid@11.0.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.1
15
url pkg:npm/mermaid@11.0.2
purl pkg:npm/mermaid@11.0.2
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.0.2
16
url pkg:npm/mermaid@11.1.0
purl pkg:npm/mermaid@11.1.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.1.0
17
url pkg:npm/mermaid@11.1.1
purl pkg:npm/mermaid@11.1.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.1.1
18
url pkg:npm/mermaid@11.2.0
purl pkg:npm/mermaid@11.2.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.2.0
19
url pkg:npm/mermaid@11.2.1
purl pkg:npm/mermaid@11.2.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.2.1
20
url pkg:npm/mermaid@11.3.0
purl pkg:npm/mermaid@11.3.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.3.0
21
url pkg:npm/mermaid@11.4.0
purl pkg:npm/mermaid@11.4.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.4.0
22
url pkg:npm/mermaid@11.4.1
purl pkg:npm/mermaid@11.4.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.4.1
23
url pkg:npm/mermaid@11.5.0
purl pkg:npm/mermaid@11.5.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.5.0
24
url pkg:npm/mermaid@11.6.0
purl pkg:npm/mermaid@11.6.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.6.0
25
url pkg:npm/mermaid@11.7.0
purl pkg:npm/mermaid@11.7.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.7.0
26
url pkg:npm/mermaid@11.8.0
purl pkg:npm/mermaid@11.8.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.8.0
27
url pkg:npm/mermaid@11.8.1
purl pkg:npm/mermaid@11.8.1
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.8.1
28
url pkg:npm/mermaid@11.9.0
purl pkg:npm/mermaid@11.9.0
is_vulnerable true
affected_by_vulnerabilities
0
vulnerability VCID-dmks-9n4b-vkh6
1
vulnerability VCID-q79q-8yzx-p3f6
resource_url http://public2.vulnerablecode.io/packages/pkg:npm/mermaid@11.9.0
References
0
reference_url https://api.first.org/data/v1/epss?cve=CVE-2025-54881
reference_id
reference_type
scores
0
value 0.00014
scoring_system epss
scoring_elements 0.02509
published_at 2026-04-26T12:55:00Z
1
value 0.00015
scoring_system epss
scoring_elements 0.03367
published_at 2026-04-04T12:55:00Z
2
value 0.00015
scoring_system epss
scoring_elements 0.03355
published_at 2026-04-02T12:55:00Z
3
value 0.00015
scoring_system epss
scoring_elements 0.03382
published_at 2026-04-07T12:55:00Z
4
value 0.00015
scoring_system epss
scoring_elements 0.03387
published_at 2026-04-08T12:55:00Z
5
value 0.00015
scoring_system epss
scoring_elements 0.03408
published_at 2026-04-09T12:55:00Z
6
value 0.00015
scoring_system epss
scoring_elements 0.03366
published_at 2026-04-11T12:55:00Z
7
value 0.00015
scoring_system epss
scoring_elements 0.03337
published_at 2026-04-12T12:55:00Z
8
value 0.00015
scoring_system epss
scoring_elements 0.03314
published_at 2026-04-13T12:55:00Z
9
value 0.00015
scoring_system epss
scoring_elements 0.03291
published_at 2026-04-16T12:55:00Z
10
value 0.00015
scoring_system epss
scoring_elements 0.03301
published_at 2026-04-18T12:55:00Z
11
value 0.00015
scoring_system epss
scoring_elements 0.03418
published_at 2026-04-21T12:55:00Z
12
value 0.00017
scoring_system epss
scoring_elements 0.0407
published_at 2026-04-24T12:55:00Z
url https://api.first.org/data/v1/epss?cve=CVE-2025-54881
1
reference_url https://github.com/mermaid-js/mermaid
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv4
scoring_elements CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://github.com/mermaid-js/mermaid
2
reference_url https://github.com/mermaid-js/mermaid/commit/5c69e5fdb004a6d0a2abe97e23d26e223a059832
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv4
scoring_elements CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
2
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-08-19T18:10:57Z/
url https://github.com/mermaid-js/mermaid/commit/5c69e5fdb004a6d0a2abe97e23d26e223a059832
3
reference_url https://github.com/mermaid-js/mermaid/commit/685516a85ec1df64cefd4fd15f26533be87d458e
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv4
scoring_elements CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
2
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-08-19T18:10:57Z/
url https://github.com/mermaid-js/mermaid/commit/685516a85ec1df64cefd4fd15f26533be87d458e
4
reference_url https://github.com/mermaid-js/mermaid/security/advisories/GHSA-7rqq-prvp-x9jh
reference_id
reference_type
scores
0
value MODERATE
scoring_system cvssv3.1_qr
scoring_elements
1
value 5.3
scoring_system cvssv4
scoring_elements CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
2
value MODERATE
scoring_system generic_textual
scoring_elements
3
value Track
scoring_system ssvc
scoring_elements SSVCv2/E:P/A:Y/T:P/P:M/B:A/M:M/D:T/2025-08-19T18:10:57Z/
url https://github.com/mermaid-js/mermaid/security/advisories/GHSA-7rqq-prvp-x9jh
5
reference_url https://nvd.nist.gov/vuln/detail/CVE-2025-54881
reference_id
reference_type
scores
0
value 5.3
scoring_system cvssv4
scoring_elements CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
1
value MODERATE
scoring_system generic_textual
scoring_elements
url https://nvd.nist.gov/vuln/detail/CVE-2025-54881
6
reference_url https://github.com/advisories/GHSA-7rqq-prvp-x9jh
reference_id GHSA-7rqq-prvp-x9jh
reference_type
scores
0
value MODERATE
scoring_system cvssv3.1_qr
scoring_elements
url https://github.com/advisories/GHSA-7rqq-prvp-x9jh
Weaknesses
0
cwe_id 79
name Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
description The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
1
cwe_id 937
name OWASP Top Ten 2013 Category A9 - Using Components with Known Vulnerabilities
description Weaknesses in this category are related to the A9 category in the OWASP Top Ten 2013.
2
cwe_id 1035
name OWASP Top Ten 2017 Category A9 - Using Components with Known Vulnerabilities
description Weaknesses in this category are related to the A9 category in the OWASP Top Ten 2017.
Exploits
Severity_range_score4.0 - 6.9
Exploitability0.5
Weighted_severity6.2
Risk_score3.1
Resource_urlhttp://public2.vulnerablecode.io/vulnerabilities/VCID-q79q-8yzx-p3f6