CVE-2025-54880 json
Mermaid does not properly sanitize architecture diagram iconText leading to XSS
published last yr. modified 3mo ago also EUVD-2025-25190 , GHSA-8gwm-58g9-j8pw
- cvss
- 6.1
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 38%
- public exploits
- 0
- none known
Summary
Mermaid is a JavaScript based diagramming and charting tool that uses Markdown-inspired text definitions and a renderer to create and modify complex diagrams. In the default configuration of mermaid 11.9.0 and earlier, user supplied input for architecture diagram icons is passed to the d3 html() method, creating a sink for cross site scripting. This vulnerability is fixed in 11.10.0.
Patch / fix
- npm mermaid 11.10.0
- mermaid_project mermaid 11.10.0
Is CVE-2025-54880 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2025-54880 updated cvss 6.3
mermaid: Mermaid cross site scripting
-
Red Hat All currently supported Red Hat productsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- last yr.
Exploit prediction
0.44% chance of exploitation in the next 30 days, higher than 38% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- github.com https://github.com/mermaid-js/mermaid/security/advisories/GHSA-8gwm-58g9-j8pw referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 5.1 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N |
| CNA | 4.0 | 5.1 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/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 |
| NVD | 3.1 | 6.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | mermaid | >=11.1.0, <11.10.0 |
11.10.0 |
Affected products
- mermaid-js mermaid
Classification
- Weakness
-
- CWE-79 Improper Neutralization of Input During Web Page Generation
References
-
github.com
/mermaid-js/mermaid/commit/2aa83302795183ea5c65caec3da1edd6cb4791fc
web, patch
-
github.com
/mermaid-js/mermaid/commit/734bde38777c9190a5a72e96421c83424442d4e4
web, product
-
github.com
/mermaid-js/mermaid/security/advisories/GHSA-8gwm-58g9-j8pw
exploit, web, patch, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2025-54880
advisory
-
github.com
/mermaid-js/mermaid
package
Sources
- CVE List CVE-2025-54880
- GitHub Advisory GHSA-8gwm-58g9-j8pw
- NVD CVE-2025-54880
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.