Sceawere
Vulnerability Detail
CVE-2026-123492UPDATED Verified Sceawere Triage Sources: NVD / CISA KEV
SiYuan Nil Pointer Dereference Vulnerability
Vulnerability Metadata
- Severity
- Medium
- Score / CVSS
- 4.9
- Creation Date
- 1d ago
- Vendor
- siyuan-note
- Product
- siyuan
- Attack Type
- NULL Pointer Dereference
- Vector String
- CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H
- Attack Complexity
- LOW
Narrative and Response
Description
SiYuan before 3.8.9 contains a nil pointer dereference vulnerability in privateCacheMiddleware that allows authenticated attackers to crash the kernel by reading nonexistent MCP resources. Attackers with a valid API token can send a resources/read request in an initialized MCP session, causing a panic that terminates the kernel process and interrupts service.
Executive Summary
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Technical Details
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Mitigations
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
References
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Additional Metadata
{
"score": "4.9",
"pubDate": "2026-11-06T15:17:18.830Z",
"pubdate": "2026-11-06T15:17:18.830Z",
"executiveSummary": "SiYuan versions prior to 3.8.9 are susceptible to a nil pointer dereference vulnerability residing within the privateCacheMiddleware component.\nThis vulnerability allows an authenticated attacker to trigger a kernel panic, leading to a complete denial-of-service (DoS) of the application process.\nThe flaw is exploitable by attackers possessing a valid API token who initiate an authenticated Model Context Protocol (MCP) session.\nBy crafting a specific 'resources/read' request for non-existent resources, an attacker forces the application to dereference a null pointer during memory management or object retrieval, resulting in an unhandled exception.\nThe primary impact is the involuntary termination of the SiYuan kernel, which interrupts all ongoing services and operations.\nGiven the nature of the crash, the risk is categorized as high for availability, as it allows unauthorized interruption of service by any user with valid API credentials.\nNo complex payload delivery is required; the attack is performed through legitimate API interaction protocols.",
"technicalDetails": "The vulnerability originates in the privateCacheMiddleware of SiYuan, which fails to adequately validate the existence of resources requested via the MCP interface.\nThe root cause is an improper handling of pointer assignments when the application attempts to access or cache a resource that does not exist in the defined backend storage.\nWhen a user sends a 'resources/read' request during an active MCP session, the middleware attempts to resolve the requested resource path. If the resource is missing, the application fails to perform a null check on the returned object before proceeding with further operations or memory access.\nThe dereference of the resulting nil pointer triggers a runtime panic in the underlying language environment. Because this occurs within the kernel process of the application, the runtime exception remains unhandled, causing the entire process to terminate immediately.\nThe attack flow proceeds as follows: 1) The attacker authenticates and establishes an MCP session using a valid API token. 2) The attacker issues a maliciously crafted 'resources/read' request specifying a path or resource identifier that is guaranteed to be nonexistent within the current environment. 3) The privateCacheMiddleware receives the request and executes its lookup logic. 4) The lookup returns a nil pointer instead of the expected resource pointer. 5) The middleware proceeds to access the nil pointer, triggering a segmentation fault or a runtime panic.\nThis vulnerability is classified as a classic nil pointer dereference, a type of memory corruption flaw that results in process instability. Because the kernel handles core API functionalities, its termination results in the unavailability of all dependent services.\nThe impact is strictly limited to availability, as there is currently no evidence suggesting that this memory corruption can be leveraged for arbitrary code execution or privilege escalation. However, the ease of triggerability makes it an effective tool for disrupting service operations repeatedly.\nThe affected component is specific to the privateCacheMiddleware responsible for caching MCP resources. All versions of SiYuan before 3.8.9 are affected, and the requirement for a valid API token means that internal users or attackers who have compromised an API key can easily trigger the exploit."
}