SSRF in B3log Siyuan
CVE-2026-40107
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.
Vulnerability class: SSRF (Server-Side Request Forgery)
EPSS: 0.003 (22.9th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 6.5 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N.
Affected products
- B3log Siyuan
- Siyuan-note Siyuan — versions < 3.6.4
Weakness classification (CWE)
References
- security-advisories@github.com (x_refsource_CONFIRM, Exploit, Vendor Advisory)
Frequently asked questions
- What is CVE-2026-40107?
- CVE-2026-40107 is a medium-severity vulnerability in B3log Siyuan, classified under Server-Side Request Forgery (SSRF). CVSS score: 6.5/10. Published 2026-04-09.
- How severe is CVE-2026-40107?
- Medium severity. CVSS v3 base score is 6.5 out of 10.