Vulnérabilité dans mermaid (CVE-2026-71438)
Résumé
Vulnérabilité dans mermaid (CVE-2026-71438). Risque d'opérations non autorisées ou de divulgation. Exploitable via mermaid.initialize. Atténuation : mise à jour vers 10.9.8 ou plus.
Description d'origine
La description telle que publiée par la source (souvent en anglais).
Summary
Mermaid's configuration setters (mermaid.initialize, mermaidAPI.setConfig, and mermaidAPI.updateSiteConfig) merge the caller-supplied configuration object into Mermaid's internal config using the assignWithDepth deep-merge helper that is vulnerable to prototype pollution.
Because these APIs are intended to receive trusted configuration supplied by the application integrating Mermaid, Mermaid assesses the practical risk as low. The vulnerability is only reachable if an application forwards attacker-controlled data directly into one of these configuration entry points, which is outside their documented usage.
User-controlled configuration (e.g. configuration in diagram code using %%{init: {}}%% or YAML frontmatter) are already protected from prototype pollution.
Patches
This has been patched in https://github.com/mermaid-js/mermaid/commit/2cd6dcf735533b323507e3e889ffdea870540b43 and released in Mermaid v11.16.1.
A backport has been made for the v10 branch in c34b07a0815842327e70794d69b0c8c5a1e2a956 and was released in Mermaid v10.9.8
Impact
Mermaid believes it's unlikely that anybody is impacted, as these functions are configuration entry points expected to receive trusted, developer-controlled values as they can modify other security-relevant configuration.
Workarounds
Don't pass user-controlle…
Source: GitHub Security Advisories (Global) NVD GitHub Advisory
Résumé généré automatiquement
Assemblé par SecPulse à partir des données sources (CVSS, CWE, versions affectées) à l'aide de modèles, sans IA. Vérifiez la description d'origine et les références ci-dessous.
Une vulnérabilité référencée CVE-2026-71438 a été découverte dans mermaid.
Des attaquants peuvent cibler un point d'entrée spécifique comme mermaid.initialize à distance pour détourner le produit.
Risque d'opérations non autorisées ou de divulgation.
Action : mettez à jour mermaid vers 10.9.8 ou supérieur.
En cas de doute, contactez votre service informatique ou cherchez « mermaid CVE-2026-71438 » sur le site de l'éditeur.
CVE-2026-71438 (mermaid) — CWE-1321
Surface d'attaque : mermaid.initialize / mermaidAPI.setConfig / mermaidAPI.updateSiteConfig / assignWithDepth
Correctif : 10.9.8 — appliquer immédiatement
Contournement : Don't pass user-controlled data to the mermaid.initialize, mermaidAPI.setConfig, and mermaidAPI.updateSiteConfig functions.
Plan : 1) Audit SBOM, 2) Mise à jour staging→prod, 3) Surveillance WAF/proxy sur les endpoints affectés, 4) Recherche d'IOC dans les logs.
Réfs : voir GHSA / avis éditeur / version corrigée liés sur cette page.
Une vulnérabilité (CWE-1321) affecte mermaid. Les attaquants atteignent le code vulnérable via mermaid.initialize.
Consultez l'avis de l'éditeur pour les versions affectées de mermaid. Surface d'attaque : mermaid.initialize / mermaidAPI.setConfig / mermaidAPI.updateSiteConfig / assignWithDepth.
Gravité : ?. Risque d'opérations non autorisées ou de divulgation.
Mettre à jour vers 10.9.8.
Contournement : Don't pass user-controlled data to the mermaid.initialize, mermaidAPI.setConfig, and mermaidAPI.updateSiteConfig functions.
Recherchez dans les logs des requêtes correspondant aux IOC connus de cette CVE. Auditez les SBOM/dépendances.
Actions de réponse
Étapes concrètes et exemples de commandes que les équipes SOC/SRE doivent exécuter dans l'ordre
-
1Identify exposure identify
grep -r 'mermaid' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
mermaidを grep し、稼働しているサービス・バージョンを把握する。 -
2Apply temporary workaround mitigate
Don't pass user-controlled data to the `mermaid.initialize`, `mermaidAPI.setConfig`, and `mermaidAPI.updateSiteConfig` functions.パッチが適用されるまでの応急処置として、Don't pass user-controlled data to the
mermaid.initialize,mermaidAPI.setConfig, andmermaidAPI.updateSiteConfigfunctions. を実施。回避策の副作用 (機能低下) を確認した上で。 -
3Apply patch patch
Upgrade mermaid to 10.9.8ステージング環境で 10.9.8 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
4Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。