SiYuan has broken access control in /api/search/{searchAsset,searchTag,searchWidget,searchTemplate} publish-mode
CVE-2026-45148GHSA-fmh9-gpqh-g53g
What to do
Vendor fix available. Upgrade each affected package to the fixed version on its release line (github.com/siyuan-note/siyuan/kernel 0.0.0-20260512140701-d7b77d945e0d), redeploy, then verify what is actually installed.
This page has no inventory attached, so it cannot say whether you are affected. A vendor fix is not proof that your deployment is fixed.
Affected packages
Go github.com/siyuan-note/siyuan/kernel
- Affected
- < 0.0.0-20260512140701-d7b77d945e0d
- Fixed in
- 0.0.0-20260512140701-d7b77d945e0d
Sources
- GitHub Advisory Database and maintainer security advisories on GitHub
GitHub-reviewed advisory GHSA-fmh9-gpqh-g53g lists affected ranges: Go github.com/siyuan-note/siyuan/kernel >=0 <0.0.0-20260512140701-d7b77d945e0d
VerifiedObserved Structured GitHub Advisory Database record (type=reviewed) from the GitHub REST API.
Severity and exploitation
- Exploitation
- No confirmed exploitation recorded. Patch Next marks exploitation only from CISA KEV.
- CVSS
- 4.3 · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
- EPSS
- CVE-2026-45148: 0.22% estimated exploitation activity in the next 30 days; percentile 12.76 (FIRST EPSS, 2026-11-03). This is a model estimate, not proof of exploitation or customer exposure.
Source description
As published by the source; long descriptions are shortened.
Summary The advisory GHSA-c77m-r996-jr3q patched getBookmark so that, when invoked by a publish-mode RoleReader, results are filtered through FilterBlocksByPublishAccess to remove entries from password-protected / publish-ignored notebooks. Four sibling search handlers in the same file did not receive the equivalent treatment and continue to expose metadata across the publish-access boundary. Details Affected files / lines (v3.6.5): kernel/api/router.go:181-190 — all four endpoints registered with CheckAuth only, which the publish-service RoleReader JWT passes: kernel/api/search.go — none of the four handlers branches on model.IsReadOnlyRoleContext(c) to filter the response, while their peers in the same file do. Compare: model.SearchAssetsByName, model.SearchTags, model.SearchWidget, model.SearchTemplate operate over the entire workspace database / filesystem, not just the publish-visible subset. A FilterTagsByPublishIgnore helper already exists in kernel/model/ and is used by…
Dates and revisions
- Published by the source
- Last modified by the source
- Source last checked
- Revision 1 · created ·
Published from ghsa record GHSA-fmh9-gpqh-g53g
Agent brief
Preview the exact text before you copy it. Commands are read-only suggestions; review them before running anything.
# Patch Next advisory brief: CVE-2026-45148
Advisory: SiYuan has broken access control in `/api/search/{searchAsset,searchTag,searchWidget,searchTemplate}` publish-mode
IDs: CVE-2026-45148, GHSA-fmh9-gpqh-g53g
Record: https://patchnext.com/advisories/cve-2026-45148 (revision 1, source checked 26 Oct 2026, 15:22 UTC)
Inventory: none attached. This brief comes from a public page and does not say whether any deployment is affected.
Severity: Medium (CVSS 4.3)
Exploitation: no confirmed exploitation recorded. Patch Next confirms exploitation only from CISA KEV.
Vendor response: Vendor fix available; fixed versions by package: github.com/siyuan-note/siyuan/kernel 0.0.0-20260512140701-d7b77d945e0d. A vendor fix does not mean a deployment is fixed.
## Affected components
- Go github.com/siyuan-note/siyuan/kernel: affected < 0.0.0-20260512140701-d7b77d945e0d; fixed in 0.0.0-20260512140701-d7b77d945e0d
## Suggested inspection (read-only)
- Go github.com/siyuan-note/siyuan/kernel: check the installed version with your package manager.
## Supported action
Upgrade each affected component to a fixed version on its release line. For a transitive dependency, upgrade the parent package or add an override or constraint, then regenerate the lockfile. Redeploy every environment that ran an affected version.
## Required regression checks
- Run the test suite and a production build.
- Exercise the features that depend on github.com/siyuan-note/siyuan/kernel.
- Repeat the inspection and confirm that only fixed versions remain installed.
## Rollback considerations
- Keep the previous lockfile and deployment artifact. Rolling back reinstates the vulnerable version, so apply any documented mitigation while you fix forward.
## Unresolved questions
- Which deployments run an affected version?
- Exploitation status can change. Check again before lowering the priority.
- Mark the work resolved only after the fixed version is verified in production.
## Sources
- Verified: https://github.com/advisories/GHSA-fmh9-gpqh-g53g (GitHub-reviewed advisory GHSA-fmh9-gpqh-g53g lists affected ranges: Go github.com/siyuan-note/siyuan/kernel >=0 <0.0.0-20260512140701-d7b77d945e0d)
Commands are suggestions: review each one before running it.Loading voting…