CVE Intelligence

Vulnerabilidades do Siyuan-note Siyuan

🔔 Criar alerta RSS Verificador de versão

CVEs publicadas que afetam Siyuan-note Siyuan: 207 registro(s), com versões afetadas e correções.

CVE-2026-33669 Alta · 7.5 CWE-125 26/03/2026
SiYuan has Arbitrary Document Reading within the Publishing Service
SiYuan is a personal knowledge management system. Prior to version 3.6.2, document IDs were retrieved via the /api/file/readDir interface, and then the /api/block/getChildBlocks interface was used to view the content of all documents. Version 3.6.2 patches the issue.
CVE-2026-33476 Alta · 7.5 Exploit público CWE-22 20/03/2026
SiYuan has an Unauthenticated Arbitrary File Read via Path Traversal
SiYuan is a personal knowledge management system. Prior to version 3.6.2, the Siyuan kernel exposes an unauthenticated file-serving endpoint under `/appearance/*filepath.` Due to improper path sanitization, attackers can perform directory traversal and read arbitrary files accessible to the server process. Authentication checks explicitly exclude this endpoint, allowing exploitation without valid credentials. Version 3.6.2 fixes this issue.
CVE-2026-33203 Alta · 7.5 CWE-248 20/03/2026
SiYuan has an Unauthenticated WebSocket DoS via Auth Keepalive Bypass
SiYuan is a personal knowledge management system. Prior to version 3.6.2, the SiYuan kernel WebSocket server accepts unauthenticated connections when a specific "auth keepalive" query parameter is present. After connection, incoming messages are parsed using unchecked type assertions on attacker-controlled JSON. A remote attacker can send malformed messages that trigger a runtime panic, potentially crashing the kernel process and causing denial of service. Version 3.6.2 fixes the issue.
CVE-2026-33194 Média · 6.8 CWE-22 20/03/2026
SiYuan has an Incomplete Fix for IsSensitivePath Denylist Allows File Read from /opt, /usr, /home
SiYuan is a personal knowledge management system. Prior to version 3.6.2, the `IsSensitivePath()` function in `kernel/util/path.go` uses a denylist approach that was recently expanded (GHSA-h5vh-m7fg-w5h6, commit 9914fd1) but remains incomplete. Multiple security-relevant Linux directories are not blocked, including `/opt` (application data), `/usr` (local configs/binaries), `/home` (other users), `/mnt` and `/media` (mounted volumes). The `globalCopyFiles` and `importStdMd` endpoints rely on `IsSensitivePath` as their primary defense against reading files outside the workspace. Version 3.6.2 contains an updated fix.
CVE-2026-33067 Crítica · 9.0 CWE-79 20/03/2026
SiYuan: XSS armazenado levando a RCE via metadados de pacotes do Bazaar sem sanitização
O SiYuan é um sistema de gestão de conhecimento pessoal. As versões 3.6.0 e anteriores renderizam campos de metadados de pacotes (displayName, description) usando template literals sem escape de HTML. Um autor malicioso de pacote pode injetar HTML/JavaScript arbitrário nesses campos, que é executado automaticamente quando qualquer usuário navega pela página do Bazaar. Como a configuração do Electron do SiYuan habilita nodeIntegration: true com contextIsolation: false, esse XSS escala diretamente para Execução Remota de Código (RCE) no sistema operacional da vítima — sem nenhuma interação do usuário além de abrir a aba do marketplace. Este problema foi corrigido na versão 3.6.1.
CVE-2026-33066 Crítica · 9.0 CWE-79 20/03/2026
SiYuan: XSS armazenado levando a RCE por renderização não sanitizada do README do Bazaar
SiYuan é um sistema pessoal de gestão de conhecimento. Nas versões 3.6.0 e anteriores, a função backend renderREADME usa lute.New() sem chamar SetSanitize(true), permitindo que HTML bruto incorporado em Markdown passe sem modificação. O frontend então atribui o HTML renderizado a innerHTML sem qualquer sanitização adicional. Um autor malicioso de pacote pode incorporar JavaScript arbitrário em seu README que é executado quando um usuário clica para ver os detalhes do pacote. Como a configuração Electron do SiYuan habilita nodeIntegration: true com contextIsolation: false, esse XSS escala diretamente para execução remota de código completa. O problema foi corrigido na versão 3.6.1.
CVE-2026-32940 Média · 6.1 CWE-79 20/03/2026
SiYuan has a SanitizeSVG bypass via data:text/xml in getDynamicIcon (incomplete fix for CVE-2026-29183)
SiYuan is a personal knowledge management system. In versions 3.6.0 and below, SanitizeSVG has an incomplete blocklist — it blocks data:text/html and data:image/svg+xml in href attributes but misses data:text/xml and data:application/xml, both of which can render SVG with JavaScript execution. The unauthenticated /api/icon/getDynamicIcon endpoint serves user-controlled input (via the content parameter) directly into SVG markup using fmt.Sprintf with no escaping, served as Content-Type: image/svg+xml. This creates a click-through XSS: a victim navigates to a crafted URL, sees an SVG with an injected link, and clicking it triggers JavaScript via the bypassed MIME types. The attack requires direct navigation to the endpoint or <object>/<embed> embedding, since <img> tag rendering in the frontend doesn't allow interactive links. This issue has been fixed in version 3.6.1.
CVE-2026-32938 Média · 6.5 CWE-22 20/03/2026
SiYuan has an Arbitrary File Read in its Desktop Publish Service
SiYuan is a personal knowledge management system. In versions 3.6.0 and below, the /api/lute/html2BlockDOM on the desktop copies local files pointed to by file:// links in pasted HTML into the workspace assets directory without validating paths against a sensitive-path list. Together with GET /assets/*path, which only requires authentication, a publish-service visitor can cause the desktop kernel to copy any readable sensitive file and then read it via GET, leading to exfiltration of sensitive files. This issue has been fixed in version 3.6.1.
CVE-2026-32767 Crítica · 9.8 CWE-89 19/03/2026
SiYuan: bypass de autorização na API de busca permite execução arbitrária de SQL
SiYuan é um sistema de gestão de conhecimento pessoal. As versões 3.6.0 e anteriores contêm uma vulnerabilidade de bypass de autorização no endpoint /api/search/fullTextSearchBlock. Quando o parâmetro method é definido como 2, o endpoint repassa a entrada fornecida pelo usuário diretamente como uma instrução SQL bruta ao banco de dados SQLite subjacente, sem qualquer verificação de autorização ou de somente leitura. Isso permite que qualquer usuário autenticado — incluindo os que têm a função Reader — execute instruções SQL arbitrárias (SELECT, DELETE, UPDATE, DROP TABLE, etc.) contra o banco de dados da aplicação. Isso é inconsistente com o próprio modelo de segurança da aplicação: o endpoint SQL dedicado (/api/query/sql) exige corretamente os middlewares CheckAdminRole e CheckReadonly, mas o endpoint de busca contorna esses controles por completo. Este problema foi corrigido na versão 3.6.1.
CVE-2026-32815 Alta · 7.5 CWE-287 19/03/2026
SiYuan: Cross-Origin WebSocket Hijacking via Authentication Bypass — Unauthenticated Information Disclosure
SiYuan is a personal knowledge management system. In versions 3.6.0 and below, the WebSocket endpoint (/ws) allows unauthenticated connections when specific URL parameters are provided (?app=siyuan&id=auth&type=auth). This bypass, intended for the login page to keep the kernel alive, allows any external client — including malicious websites via cross-origin WebSocket — to connect and receive all server push events in real-time. These events leak sensitive document metadata including document titles, notebook names, file paths, and all CRUD operations performed by authenticated users. Combined with the absence of Origin header validation, a malicious website can silently connect to a victim's local SiYuan instance and monitor their note-taking activity. This issue has been fixed in version 3.6.1.
CVE-2026-32751 Crítica · 9.0 CWE-79 19/03/2026
SiYuan: XSS armazenado no nome de caderno da interface móvel com risco de execução remota de código
O SiYuan é um sistema de gerenciamento pessoal de conhecimento. Nas versões 3.6.0 e anteriores, a árvore de arquivos móvel (MobileFiles.ts) exibe nomes de cadernos via innerHTML sem escape de HTML ao processar eventos WebSocket de renamenotebook. A versão para desktop (Files.ts) usa corretamente escapeHtml() para a mesma operação. Um usuário autenticado que pode renomear cadernos pode injetar HTML/JavaScript arbitrário que será executado em qualquer cliente móvel que visualize a árvore de arquivos. Como o Electron está configurado com nodeIntegration: true e contextIsolation: false, o JavaScript injetado tem acesso completo ao Node.js, elevando o XSS armazenado a execução remota de código completa. O layout móvel também é usado no aplicativo desktop Electron quando a janela está estreita, tornando a falha explorável também no desktop. O problema foi corrigido na versão 3.6.1.
CVE-2026-32750 Média · 6.8 CWE-22 19/03/2026
SiYuan importStdMd: unvalidated localPath imports arbitrary host directories as persistent notes
SiYuan is a personal knowledge management system. In versions 3.6.0 and below, POST /api/import/importStdMd passes the localPath parameter directly to model.ImportFromLocalPath with zero path validation. The function recursively reads every file under the given path and permanently stores their content as SiYuan note documents in the workspace database, making them searchable and accessible to all workspace users. Data persists in the workspace database across restarts and is accessible to Publish Service Reader accounts. Combined with the renderSprig SQL injection ( separate advisory ), a non-admin user can then read all imported secrets without any additional privileges. This issue has been fixed in version 3.6.1.
CVE-2026-32749 Crítica · 9.1 CWE-22 19/03/2026
SiYuan importSY/importZipMd: Travessia de diretório permite gravação arbitrária de arquivos
O SiYuan é um sistema de gestão de conhecimento pessoal. Nas versões 3.6.0 e anteriores, POST /api/import/importSY e POST /api/import/importZipMd gravam arquivos enviados em um caminho derivado do campo filename do multipart, sem sanitização, permitindo que um administrador grave arquivos em locais arbitrários fora do diretório temporário, incluindo caminhos do sistema que possibilitam RCE. Isso pode levar à destruição de dados ao sobrescrever arquivos do workspace ou da aplicação e, em contêineres Docker executados como root (padrão comum), concede comprometimento total do contêiner. Este problema foi corrigido na versão 3.6.1.
CVE-2026-32747 Média · 4.9 CWE-22 19/03/2026
SiYuan: Incomplete sensitive path blocklist in globalCopyFiles allows reading /proc and Docker secrets
SiYuan is a personal knowledge management system. In versions 3.6.0 and below, the globalCopyFiles API eads source files using filepath.Abs() with no workspace boundary check, relying solely on util.IsSensitivePath() whose blocklist omits /proc/, /run/secrets/, and home directory dotfiles. An admin can copy /proc/1/environ or Docker secrets into the workspace and read them via the standard file API. An admin can exfiltrate any file readable by the SiYuan process that falls outside the incomplete blocklist. In containerized deployments this includes all injected secrets and environment variables - a common pattern for passing credentials to containers. The exfiltrated files are then accessible via the standard workspace file API and persist until manually deleted. This issue has been fixed in version 3.6.1.
CVE-2026-32704 Média · 6.5 CWE-285 16/03/2026
SiYuan renderSprig: missing admin check allows any user to read full workspace DB
SiYuan is a personal knowledge management system. Prior to 3.6.1, POST /api/template/renderSprig lacks model.CheckAdminRole, allowing any authenticated user to execute arbitrary SQL queries against the SiYuan workspace database and exfiltrate all note content, metadata, and custom attributes. This vulnerability is fixed in 3.6.1.
CVE-2026-32110 Alta · 8.3 CWE-918 11/03/2026
SiYuan has a Full-Read SSRF via /api/network/forwardProxy
SiYuan is a personal knowledge management system. Prior to 3.6.0, the /api/network/forwardProxy endpoint allows authenticated users to make arbitrary HTTP requests from the server. The endpoint accepts a user-controlled URL and makes HTTP requests to it, returning the full response body and headers. There is no URL validation to prevent requests to internal networks, localhost, or cloud metadata services. This vulnerability is fixed in 3.6.0.
CVE-2026-31809 Média · 6.1 Exploit público CWE-79 10/03/2026
SiYuan has a SVG Sanitizer Bypass via Whitespace in `javascript:` URI — Unauthenticated XSS
SiYuan is a personal knowledge management system. Prior to 3.5.10, SiYuan's SVG sanitizer (SanitizeSVG) checks href attributes for the javascript: prefix using strings.HasPrefix(). However, inserting ASCII tab (&#9;), newline (&#10;), or carriage return (&#13;) characters inside the javascript: string bypasses this prefix check. Browsers strip these characters per the WHATWG URL specification before parsing the URL scheme, so the JavaScript still executes. This allows an attacker to inject executable JavaScript into the unauthenticated /api/icon/getDynamicIcon endpoint, creating a reflected XSS. This is a second bypass of the fix for CVE-2026-29183 (fixed in v3.5.9). This vulnerability is fixed in 3.5.10.
CVE-2026-31807 Média · 6.1 Exploit público CWE-79 10/03/2026
SiYuan has a SVG Sanitizer Bypass via `<animate>` Element — Unauthenticated XSS
SiYuan is a personal knowledge management system. Prior to 3.5.10, SiYuan's SVG sanitizer (SanitizeSVG) blocks dangerous elements (<script>, <iframe>, <foreignobject>) and removes on* event handlers and javascript: in href attributes. However, it does NOT block SVG animation elements (<animate>, <set>) which can dynamically set attributes to dangerous values at runtime, bypassing the static sanitization. This allows an attacker to inject executable JavaScript into the unauthenticated /api/icon/getDynamicIcon endpoint (type=8), creating a reflected XSS. This is a bypass of the fix for CVE-2026-29183 (fixed in v3.5.9). This vulnerability is fixed in v3.5.10.
CVE-2026-30869 Crítica · 9.8 CWE-22 10/03/2026
SiYuan has a Path Traversal in /export Endpoint Allows Arbitrary File Read and Secret Leakage
SiYuan is a personal knowledge management system. Prior to 3.5.10, a path traversal vulnerability in the /export endpoint allows an attacker to read arbitrary files from the server filesystem. By exploiting double‑encoded traversal sequences, an attacker can access sensitive files such as conf/conf.json, which contains secrets including the API token, cookie signing key, and workspace access authentication code. Leaking these secrets may enable administrative access to the SiYuan kernel API, and in certain deployment scenarios could potentially be chained into remote code execution (RCE). This vulnerability is fixed in 3.5.10.
CVE-2026-30926 Alta · 7.1 CWE-862 10/03/2026
SiYuan Note publish service authorization bypass allows low-privilege users to modify notebook content
SiYuan is a personal knowledge management system. Prior to 3.5.10, a privilege escalation vulnerability exists in the publish service of SiYuan Note that allows low-privilege publish accounts (RoleReader) to modify notebook content via the /api/block/appendHeadingChildren API endpoint. The endpoint requires only the model.CheckAuth role, which accepts RoleReader sessions, but it does not enforce stricter checks, such as CheckAdminRole or CheckReadonly. This allows remote authenticated publish users with read-only privileges to append new blocks to existing documents, compromising the integrity of stored notes.
CVE-2026-29183 Média · 6.1 Exploit público CWE-79 06/03/2026
SiYuan: Unauthenticated reflected SVG XSS in `/api/icon/getDynamicIcon` (`type=8`) enables arbitrary JavaScript execution
SiYuan is a personal knowledge management system. Prior to version 3.5.9, an unauthenticated reflected XSS vulnerability exists in the dynamic icon API endpoint "GET /api/icon/getDynamicIcon" when type=8, attacker-controlled content is embedded into SVG output without escaping. Because the endpoint is unauthenticated and returns image/svg+xml, a crafted URL can inject executable SVG/HTML event handlers (for example onerror) and run JavaScript in the SiYuan web origin. This can be chained to perform authenticated API actions and exfiltrate sensitive data when a logged-in user opens the malicious link. This issue has been patched in version 3.5.9.
CVE-2026-29073 Alta · 8.8 CWE-89 06/03/2026
SiYuan: Direct SQL Query API accessible to Reader-level users enables unauthorized database access
SiYuan is a personal knowledge management system. Prior to version 3.6.0, the /api/query/sql lets a user run sql directly, but it only checks basic auth, not admin rights, any logged-in user, even readers, can run any sql query on the database. This issue has been patched in version 3.6.0.
CVE-2026-25992 Alta · 7.5 CWE-22 10/02/2026
SiYuan has a File Read Interface Case Bypass Vulnerability
SiYuan is a personal knowledge management system. Prior to 3.5.5, the /api/file/getFile endpoint uses case-sensitive string equality checks to block access to sensitive files. On case-insensitive file systems such as Windows, attackers can bypass restrictions using mixed-case paths and read protected configuration files. This vulnerability is fixed in 3.5.5.
CVE-2026-25647 Média · 5.4 CWE-79 06/02/2026
Lute has a Stored Cross-Site Scripting (XSS) via Markdown hyperlink
Lute is a structured Markdown engine supporting Go and JavaScript. Lute 1.7.6 and earlier (as used in SiYuan before) has a Stored Cross-Site Scripting (XSS) vulnerability in the Markdown rendering engine. An attacker can inject malicious JavaScript into a Markdown text/note. When another user clicks the rendered content, the script executes in the context of their session.
CVE-2026-25539 Alta · 7.2 CWE-22 04/02/2026
SiYuan has Arbitrary File Write via /api/file/copyFile leading to RCE
SiYuan is a personal knowledge management system. Prior to version 3.5.5, the /api/file/copyFile endpoint does not validate the dest parameter, allowing authenticated users to write files to arbitrary locations on the filesystem. This can lead to Remote Code Execution (RCE) by writing to sensitive locations such as cron jobs, SSH authorized_keys, or shell configuration files. This issue has been patched in version 3.5.5.