CVE-2025-66481

9.6 CRITICAL

📋 TL;DR

DeepChat versions 0.5.1 and below are vulnerable to cross-site scripting (XSS) attacks through improperly sanitized Mermaid diagram content. Attackers can bypass existing filters using unquoted HTML attributes and HTML entity encoding to execute arbitrary JavaScript code on victims' machines, potentially leading to remote code execution via the electron.ipcRenderer interface. This affects all users running vulnerable DeepChat instances.

💻 Affected Systems

Products:
  • DeepChat
Versions: 0.5.1 and below
Operating Systems: All platforms running DeepChat (Windows, Linux, macOS)
Default Config Vulnerable: ⚠️ Yes
Notes: All installations using Mermaid diagram functionality are vulnerable. The vulnerability exists in the MermaidArtifact.vue component.

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution on victim's machine through electron.ipcRenderer, allowing complete system compromise, data theft, and lateral movement within the network.

🟠

Likely Case

Cross-site scripting leading to session hijacking, credential theft, and unauthorized access to chat data and AI model interactions.

🟢

If Mitigated

Limited impact if proper content security policies and input validation are in place, though XSS could still lead to session compromise.

🌐 Internet-Facing: HIGH
🏢 Internal Only: HIGH

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires crafting malicious Mermaid content but does not require authentication. The bypass technique using unquoted attributes and HTML entity encoding is documented in the advisory.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: None

Vendor Advisory: https://github.com/ThinkInAIXYZ/deepchat/security/advisories/GHSA-h9f5-7hhf-fqm4

Restart Required: Yes

Instructions:

No official patch available. Monitor the GitHub repository for updates and apply immediately when released.

🔧 Temporary Workarounds

Disable Mermaid functionality

all

Temporarily disable Mermaid diagram rendering in DeepChat configuration

Edit DeepChat configuration to remove or disable Mermaid-related components

Implement strict CSP headers

all

Add Content Security Policy headers to restrict script execution

Add 'Content-Security-Policy: script-src 'self'' to web server headers

🧯 If You Can't Patch

  • Isolate DeepChat instances in network segments with strict egress filtering
  • Implement web application firewall (WAF) rules to block suspicious Mermaid content patterns

🔍 How to Verify

Check if Vulnerable:

Check DeepChat version in package.json or application settings. If version is 0.5.1 or below, the system is vulnerable.

Check Version:

Check package.json for version field or run 'npm list deepchat' in installation directory

Verify Fix Applied:

When patch becomes available, verify version is above 0.5.1 and test Mermaid content sanitization.

📡 Detection & Monitoring

Log Indicators:

  • Unusual Mermaid content patterns in request logs
  • JavaScript execution errors in electron renderer logs
  • Suspicious ipcRenderer calls

Network Indicators:

  • HTTP requests containing encoded HTML attributes in Mermaid content
  • Outbound connections from DeepChat to unexpected destinations

SIEM Query:

source="deepchat" AND (mermaid OR "<script>" OR "javascript:")

🔗 References

📤 Share & Export