Skip to content
OpenAdvisories

Package · Go

github.com/siyuan-note/siyuan/kernel

113 known vulnerabilities.

112 results · Feed

  • Medium 5.8

    SiYuan: The publish filter for local storage returns the administrator's entire storage map with only three keys sanitized

    ### Relationship to GHSA-hgfg-j9pg-43xw That advisory concerned the administrator's live UI layout, and commit `63c7d5474` resolved it by removing `FilterUILayoutByPublishIgnore` and nulling `Conf.UILayout` for readers. That fix is correct and complete for th…

  • High 8.8

    SiYuan before v3.8.2 TLS Private Key Disclosure via getFile

    SiYuan versions <= 3.8.1 (fixed in v3.8.2) contain an incomplete blocklist in the IsForbiddenAbsPath() function (kernel/util/path_guard.go), which only blocks conf/conf.json by exact match and does not restrict the TLS private key (conf/key.pem) or CA private…

  • Medium 4.9

    SiYuan before v3.8.1 Missing Authorization via /history and /repo/diff

    SiYuan before v3.8.1 does not apply the IsForbiddenAbsPath guard (introduced in GHSA-c8r8-95hg-mp34) to the /history/*path and /repo/diff/*path endpoints in kernel/server/serve.go. These routes require admin authentication but construct file paths independent…

  • High 8.2

    SiYuan before v3.8.1 SSRF via DNS-Rebinding TOCTOU

    SiYuan versions before v3.8.1 contain a server-side request forgery vulnerability in the http_request and web_fetch agent tools that perform DNS resolution only at guard time without validating the connect-time resolution. Attackers can use DNS rebinding to a…

  • Medium 5.7

    SiYuan before v3.8.1 Path Traversal via asset.upload

    SiYuan before v3.8.1 contains a path traversal vulnerability in the asset.upload MCP tool that accepts arbitrary absolute file paths without workspace boundary validation. Attackers can induce the AI Agent to upload sensitive files such as SSH keys or credent…

  • Medium 6.6

    SiYuan before v3.7.4 Plugin Overwrite via Bazaar Install

    SiYuan versions before v3.7.4 fail to validate that packageName matches the downloaded package content in bazaar install endpoints. Attackers with same-origin access can overwrite existing trusted plugins by supplying mismatched packageName and repoURL parame…

  • Medium 4.9

    SiYuan before v3.8.0 Incomplete Path Blocklist via MCP file tool

    SiYuan versions before v3.8.0 contain an incomplete path blocklist in the MCP file tool that fails to restrict access to sensitive workspace files protected by the HTTP API. Authenticated administrators can read plaintext publish-mode passwords from data/.siy…

  • High 7.5

    SiYuan before v3.7.4 Missing Authorization via block API

    SiYuan before v3.7.4 is missing authorization checks in 17 block metadata/content endpoints in kernel/api/block.go (including getRefText, checkBlockExist, and getBlockBreadcrumb). These handlers are gated only by basic authentication (model.CheckAuth) and lac…

  • High 8.2

    SiYuan 3.7.3 Cross-Site WebSocket Hijacking via network proxy

    SiYuan versions before 3.7.4 contain a cross-site WebSocket hijacking vulnerability in the admin-only /ws/network/proxy endpoint that explicitly disables origin validation by setting CheckOrigin to unconditionally return true. Attackers can craft malicious we…

  • High 7.5

    SiYuan before v3.7.4 Authentication Bypass via WebSocket

    SiYuan versions before v3.7.4 contain an authentication bypass vulnerability in the WebSocket endpoint caused by differential parsing of query parameters between authentication exemption and session quarantine checks. Unauthenticated attackers can craft a mal…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via authFilePublishAccess

    SiYuan before v3.7.4 contains an information disclosure vulnerability in the /api/filetree/authFilePublishAccess endpoint, which is registered with CheckAuth only and is reachable anonymously. The endpoint never sets a failure code, so its outcome is signalle…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via getAttributeViewBacklinks

    SiYuan versions before v3.7.4 contain an information disclosure vulnerability in the getAttributeViewBacklinks endpoint that consults the forbidden access list instead of the visibility list when filtering backlinks. Anonymous readers can supply a publicly vi…

  • Medium 6.5

    SiYuan before v3.7.4 Missing Authorization via refreshBacklink

    SiYuan versions before v3.7.4 contain a missing authorization vulnerability in the /api/ref/refreshBacklink endpoint that allows anonymous readers to trigger persistent server-side writes. Attackers can invoke the endpoint with an attacker-controlled block ID…

  • Critical 10.0

    SiYuan before v3.7.4 SQL Injection via backlink search

    SiYuan versions <= v3.7.2 contain a SQL injection vulnerability in the backlink/mention search query (kernel/model/backlink.go), which concatenates stored block metadata (title, name, alias, anchor text) and the client-supplied keyword into a SQL MATCH/search…

  • High 8.6

    SiYuan before v3.7.4 Publish-Boundary Bypass via WebSocket

    SiYuan versions before v3.7.4 contain a publish-boundary bypass vulnerability in WebSocket broadcast sessions that allows anonymous readers to receive unfiltered edits. Attackers can establish a WebSocket connection to the publish surface and passively receiv…

  • High 8.6

    SiYuan v3.7.4-alpha.2 Authorization Bypass via getAttributeViewSearchTarget

    SiYuan's development branch (endpoint introduced by commit 9b8e8956f, not present in v3.7.3 or master, patched in v3.7.4-alpha.3) contains a missing-authorization vulnerability in the /api/av/getAttributeViewSearchTarget endpoint. The route is registered with…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via getBookmarkLabels

    SiYuan versions before v3.7.4 contain an information disclosure vulnerability in the getBookmarkLabels endpoint that returns all bookmark labels in the workspace without publish-access filtering. Anonymous readers and publish-mode readers can obtain the compl…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via getOutlineStorage

    SiYuan versions before v3.7.4 contain an information disclosure vulnerability in the /api/storage/getOutlineStorage endpoint that performs no authorization checks. Attackers can retrieve outline state including heading identifiers for any document by supplyin…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via getRefIDs

    SiYuan versions before v3.7.4 contain an information disclosure vulnerability in the /api/block/getRefIDs endpoint that fails to check password-protected document tiers. Unauthenticated readers can discover that password-protected documents reference specific…

  • Medium 5.8

    SiYuan before v3.7.4 Path Traversal via getUniqueFilename

    SiYuan versions before v3.7.4 contain a path traversal vulnerability in the getUniqueFilename endpoint that allows anonymous readers to probe filesystem existence without validation or confinement. Attackers can supply arbitrary absolute paths to determine wh…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via getFileAnnotation

    SiYuan versions up to and including v3.7.2 (fixed in v3.7.4) contain an information disclosure vulnerability in the /api/asset/getFileAnnotation endpoint, which returns .sya PDF-annotation file content without a publish-access check. Because the endpoint is g…

  • High 8.0

    SiYuan before v3.7.4 Authentication Bypass via Localhost Trust

    SiYuan versions <= v3.7.2 (patched in v3.7.4) contain an authentication bypass vulnerability in the kernel's CheckAuth function, which grants the administrator role (RoleAdministrator) to any request whose RemoteAddr is loopback (127.0.0.1) for a specific set…

  • High 8.0

    SiYuan before v3.7.4 SQL Injection via queryBlocks template

    SiYuan versions before v3.7.4 contain a second-order SQL injection vulnerability in attribute-view template columns that expose the queryBlocks function, which executes raw SQL using string substitution instead of parameterized queries. Attackers can distribu…

  • Medium 5.8

    SiYuan before v3.7.4 Authentication Bypass via Attribute View

    SiYuan versions before v3.7.4 contain an authentication bypass vulnerability in the FilterViewByPublishAccess filter that fails to check publish password protection when rendering attribute views and database rows. Unauthenticated readers can access password-…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via Block Endpoints

    SiYuan versions before v3.7.4 fail to enforce publish-access checks on getBlockBreadcrumb, getRefText, and getBlockTreeInfos endpoints, allowing disclosure of protected document content and metadata. Anonymous readers or publish RoleReader accounts can retrie…

  • High 8.6

    SiYuan before v3.7.4 Authentication Bypass via Graph Endpoints

    SiYuan versions before v3.7.4 fail to validate publish-password tier in getGraph and getLocalGraph endpoints, allowing anonymous readers to retrieve block-level content of password-protected documents. Attackers can call these endpoints without supplying a pa…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via getBlockAttrs

    SiYuan versions before v3.7.4 fail to enforce publish-access checks in the getBlockAttrs and batchGetBlockAttrs endpoints. Attackers can retrieve block attributes including names, aliases, memos, and custom fields from protected documents by sending POST requ…

  • Medium 5.3

    SiYuan before v3.7.4 Information Disclosure via resolveAssetPath

    SiYuan versions before v3.7.4 contain an information disclosure vulnerability in the resolveAssetPath endpoint that returns absolute filesystem paths unmodified to CheckAuth-only requests. Attackers can harvest relative asset paths from published documents an…

  • High 7.5

    SiYuan before v3.7.4 Information Disclosure via Encryption Key Material

    SiYuan versions before v3.7.4 disclose encrypted-notebook key-derivation material and wrapped data keys through unauthenticated endpoints in publish mode. Attackers can retrieve Argon2id salt, cost parameters, password verifiers, and wrapped notebook keys to …

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via Unfiltered API

    SiYuan versions before v3.7.4 fail to apply publish-access filtering to the getAttributeViewKeysByID endpoint, allowing authenticated readers to retrieve complete database column schemas including descriptions, select vocabularies, and template expressions. A…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via Path Resolution

    SiYuan before v3.7.4 (affected <=v3.7.2) fails to enforce publish-access filters on five filetree path-resolution endpoints (getFullHPathByID, getHPathByID, getPathByID, getIDsByHPath, and getHPathByPath). In publish mode, when Publish.Auth.Enable is false, a…

  • High 8.6

    SiYuan before v3.7.4 Information Disclosure via renderAttributeView

    SiYuan versions before v3.7.4 fail to properly filter related-database content in renderAttributeView, allowing anonymous readers to access Relation and Rollup cell contents from hidden or password-protected databases. Attackers can request published database…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via getEncryptedNotebookStatus

    SiYuan versions before v3.7.4 contain an information disclosure vulnerability in the getEncryptedNotebookStatus endpoint that returns encrypted notebook identifiers, names, and lock states without publish-access filtering. Anonymous readers and publish-mode a…

  • Medium 5.8

    SiYuan before v3.7.4 Access Control Bypass via Static Routes

    SiYuan before v3.7.4 contains an access control bypass vulnerability where static-file routes in the server mux bypass publish-access controls enforced on the REST API. Attackers with publish reader tokens or anonymous access in disabled-auth mode can read te…

  • High 8.6

    SiYuan before v3.7.4 Information Disclosure via Embed Block

    SiYuan versions before v3.7.4 fail to filter embedded block content by publish access in the getBlockDOMWithEmbed and getBlockDOMsWithEmbed endpoints. Attackers can request published blocks containing embed queries to read content from password-protected, hid…

  • High 8.6

    siyuan before v3.7.4 Session Cookie Key Disclosure via getConf

    siyuan versions before v3.7.4 expose the session cookie signing key through the /api/system/getConf endpoint to unauthenticated users in publish mode. Attackers can retrieve the CookieKey value and forge valid session cookies to impersonate users or gain admi…

  • High 8.6

    SiYuan before v3.7.4 Information Disclosure via /api/system/getConf

    SiYuan versions before v3.7.4 fail to mask sensitive configuration fields in the /api/system/getConf endpoint, allowing anonymous or publish-reader users to obtain the session-cookie signing key, OS username via pandoc path, and encrypted-notebook key materia…

  • Medium 5.8

    SiYuan before v3.7.4 Information Disclosure via Tag API

    SiYuan before v3.7.4 contains an information disclosure vulnerability in the /api/tag/getTag endpoint that returns tag labels and occurrence counts from password-protected documents to unauthenticated readers. Attackers can enumerate tag vocabulary and intern…

  • Medium 5.8

    SiYuan v3.7.4-alpha.1 Information Disclosure via getAttributeViewFieldViews

    SiYuan v3.7.4-alpha.1 (a pre-release; the endpoint does not exist in stable v3.7.3 or earlier) contains an information disclosure vulnerability in the /api/av/getAttributeViewFieldViews endpoint. The route is registered with CheckAuth only and applies no publ…

  • High 8.6

    SiYuan before v3.7.4 Authentication Bypass via Encrypted Notebooks

    SiYuan before v3.7.4 fails to properly validate publish access for encrypted notebooks, treating them as publicly accessible by default. Anonymous readers can enumerate and retrieve fully decrypted document content from unlocked encrypted notebooks through th…