CVE-2026-100646 SiYuan before v3.8.4 Authentication Bypass via Missing Origin Header
An unauthenticated remote attacker can bypass authentication via missing Origin headers to execute arbitrary script and access administrator APIs in SiYuan.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- None listed
What is CVE-2026-100646?
CVE-2026-100646 is a high-severity authentication bypass vulnerability in siyuan-note siyuan, published on 26 Sep 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.
Official description
SiYuan is a self-hosted personal knowledge management system. In versions up to and including 3.8.3, the kernel's authentication guards (CheckAuth in kernel/model/session.go and IsSessionOriginAllowed in kernel/util/net.go) fail open when the HTTP Origin header is absent, on the incorrect assumption that any browser-initiated cross-site request carries an Origin. Because browsers omit Origin on cross-site top-level GET navigations and no-cors GET subresource loads — and the session cookie is SameSite=Lax — a single cross-site GET issued from any attacker-controlled web page is granted RoleAdministrator, both on default installations with no access-authorization code and on password-protected instances with a live session. Combined with content-type sniffing on the /api/network/proxy endpoint, which allows attacker-controlled HTML to be served under SiYuan's own origin, this permits an unauthenticated remote attacker to execute arbitrary script in the SiYuan origin (http://127.0.0.1:6806), invoke administrator APIs, and exfiltrate the persistent kernel API token. This issue is fixed in version 3.8.4.
Weakness: CWE-346
Which versions are affected by CVE-2026-100646?
How do I fix CVE-2026-100646?
No fix has been published for CVE-2026-100646 yet. Limit exposure of the affected software until one is available.
Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.
Is CVE-2026-100646 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-100646 exists.
Sources
Also known as GHSA-2w6q-wgc8-q743, GHSA-r2fg-xpcg-8v48.