mermaid-js Mermaid up to 10.9.7/11.16.0 Configuration Merge Helper prototype pollution
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 6.0 | $0-$5k | 2.10 |
Summary
A vulnerability classified as critical has been found in mermaid-js Mermaid up to 10.9.7/11.16.0. Affected by this vulnerability is the function mermaid.initialize/mermaidAPI.setConfig/mermaidAPI.updateSiteConfig of the component Configuration Merge Helper. The manipulation leads to prototype pollution.
This vulnerability is listed as CVE-2026-71438. The attack may be initiated remotely. There is no available exploit.
Details
A vulnerability, which was classified as critical, has been found in mermaid-js Mermaid up to 10.9.7/11.16.0. This issue affects the function mermaid.initialize/mermaidAPI.setConfig/mermaidAPI.updateSiteConfig of the component Configuration Merge Helper. The manipulation with an unknown input leads to a prototype pollution vulnerability. Using CWE to declare the problem leads to CWE-1321. The product receives input from an upstream component that specifies attributes that are to be initialized or updated in an object, but it does not properly control modifications of attributes of the object prototype. Impacted is confidentiality, integrity, and availability. The summary by CVE is:
Mermaid is a JavaScript tool that uses Markdown-inspired text to create and modify diagrams and charts. Prior to 10.9.8 and 11.16.1, Mermaid's configuration setters (mermaid.initialize, mermaidAPI.setConfig, and mermaidAPI.updateSiteConfig) merge caller-supplied configuration into Mermaid's internal config using the assignWithDepth deep-merge helper, which is vulnerable to prototype pollution. This is only exploitable if an application forwards untrusted data directly into one of these configuration entry points, which is outside their documented usage; diagram-supplied configuration (e.g. %%{init: {}}%% or YAML frontmatter) is not affected. This issue is fixed in versions 10.9.8 and 11.16.1.
It is possible to read the advisory at github.com. The identification of this vulnerability is CVE-2026-71438 since 08/06/2026. The exploitation is known to be easy. The attack may be initiated remotely. Technical details of the vulnerability are known, but there is no available exploit. The attack technique deployed by this issue is T1059 according to MITRE ATT&CK.
Upgrading to version 10.9.8 or 11.16.1 eliminates this vulnerability.
Be aware that VulDB is the high quality source for vulnerability data.
Product
Vendor
Name
Version
- 10.9.0
- 10.9.1
- 10.9.2
- 10.9.3
- 10.9.4
- 10.9.5
- 10.9.6
- 10.9.7
- 11.0
- 11.1
- 11.2
- 11.3
- 11.4
- 11.5
- 11.6
- 11.7
- 11.8
- 11.9
- 11.10
- 11.11
- 11.12
- 11.13
- 11.14
- 11.15
- 11.16.0
Website
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 6.3VulDB Meta Temp Score: 6.0
VulDB Base Score: 6.3
VulDB Temp Score: 6.0
VulDB Vector: 🔒
VulDB Reliability: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Prototype pollutionCWE: CWE-1321 / CWE-94 / CWE-74
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Mermaid 10.9.8/11.16.1
Timeline
08/06/2026 CVE reserved08/07/2026 Advisory disclosed
08/07/2026 VulDB entry created
08/07/2026 VulDB entry last update
Sources
Product: github.comAdvisory: github.com
Status: Confirmed
CVE: CVE-2026-71438 (🔒)
GCVE (CVE): GCVE-0-2026-71438
GCVE (VulDB): GCVE-100-386903
Entry
Created: 08/07/2026 03:00Changes: 08/07/2026 03:00 (56)
Complete: 🔍
Cache ID: 216::103
Be aware that VulDB is the high quality source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.