Description
SiYuan versions before 3.8.3 contain an SQL injection vulnerability in the graph.go query2Stmt function where tag values are concatenated raw into SQL string literals without escaping single quotes. A publish-mode reader or anonymous visitor can inject SQL via inline HTML span tags in the getGraph endpoint to execute arbitrary queries on the read-write database and exfiltrate private data across notebooks.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| siyuan-note | siyuan | < 3.8.3 | 3.8.3 |
References
- GitHub Security Advisory (GHSA-5rwv-4j4c-f954) vendor-advisory
- VulnCheck Advisory: SiYuan before 3.8.3 SQL Injection via unescaped tag in graph.go third-party-advisory