Home

Description

SiYuan is a personal knowledge management system. Prior to 3.6.4, SiYuan configures Mermaid.js with securityLevel: "loose" and htmlLabels: true. In this mode, <img> tags with src attributes survive Mermaid's internal DOMPurify and land in SVG <foreignObject> blocks. The SVG is injected via innerHTML with no secondary sanitization. When a victim opens a note containing a malicious Mermaid diagram, the Electron client fetches the URL. On Windows, a protocol-relative URL (//attacker.com/image.png) resolves as a UNC path (\\attacker.com\image.png). Windows attempts SMB authentication automatically, sending the victim's NTLMv2 hash to the attacker. This vulnerability is fixed in 3.6.4.

PUBLISHED Reserved 2026-04-09 | Published 2026-04-09 | Updated 2026-04-10 | Assigner GitHub_M




HIGH: 8.7CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:L/SI:L/SA:N

Problem types

CWE-918: Server-Side Request Forgery (SSRF)

Product status

< 3.6.4
affected

References

github.com/...siyuan/security/advisories/GHSA-w95v-4h65-j455

cve.org (CVE-2026-40107)

nvd.nist.gov (CVE-2026-40107)

Download JSON