CVE-2026-59834 SiYuan: SQL Query in Block Search Exposes Hidden Published Document Content
An unauthenticated attacker can inject SQL into the block search endpoint to read content from hidden documents in SiYuan.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-59834?
CVE-2026-59834 is a high-severity SQL injection vulnerability in siyuan-note siyuan, published on 9 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
SiYuan is an open-source personal knowledge management system. Prior to 3.7.1, the block search endpoint POST /api/search/fullTextSearchBlock concatenates attacker-controlled paths values into SQL predicates used by non-SQL search modes, allowing an unauthenticated publish visitor to inject a UNION SELECT and return rows from hidden documents by projecting an allowed visible box and path. This issue is fixed in versions 3.7.1.
Weakness: CWE-89
Which versions are affected by CVE-2026-59834?
3 open source packages ship an affected version, including github.com/siyuan-note/siyuan/kernel.
| Package | Affected | Fixed in |
|---|---|---|
github.com/siyuan-note/siyuan/kernel Go | All versions | 0.0.0-20260704035518-d0f0fe146fb0 |
github.com/siyuan-note/siyuan/kernel Go | All versions | 0.0.0-20260704035518-d0f0fe146fb0 |
github.com/siyuan-note/siyuan/kernel Go | All versions | 0.0.0-20260704035518-d0f0fe146fb0 |
How do I fix CVE-2026-59834?
Upgrade github.com/siyuan-note/siyuan/kernel to 0.0.0-20260704035518-d0f0fe146fb0 or later.
Use parameterised queries everywhere and never build SQL by joining strings. Upgrade affected software first; a web application firewall only buys time. More about SQL injection.
Is CVE-2026-59834 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-59834 exists.
Sources
Also known as GHSA-h89q-4j2h-7h88, GO-2026-6353.