CVE-2026-73605
Executive Summary
CVE-2026-73605 is an unauthenticated path traversal / missing-authorization vulnerability in the getUniqueFilename endpoint of the SiYuan knowledge-base application, affecting all versions prior to v3.7.4. The flaw allows anonymous remote attackers to submit arbitrary absolute paths and learn whether those files or directories exist on the host, creating a filesystem existence oracle that supports reconnaissance of the host layout and installed software. The vulnerability carries a CVSS score of 5.8 (AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N); as of this report no vendor-confirmed patch is tracked, no public exploit code is known, and the CVE is not listed in CISA KEV.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Technical Analysis
SiYuan is a self-hosted personal knowledge management and note-taking platform whose kernel exposes an HTTP-based API to the local web UI and, in many deployments, to the network. The NVD description identifies the getUniqueFilename endpoint as the vulnerable surface. This endpoint is responsible for producing collision-free filenames; to do so it must compare candidate names against existing file system entries. The vulnerability arises because the endpoint accepts arbitrary absolute paths without validation or confinement and is reachable by anonymous readers — i.e., no authentication or role check is enforced (CWE-862, Missing Authorization).
Two distinct weakness classes are visible in the NVD data. The first is the authorization gap: the description explicitly states that "anonymous readers" can reach the endpoint, and the assigned CWE-862 confirms that the endpoint does not enforce access control. The second is the path-traversal behavior: the endpoint processes attacker-supplied absolute paths, meaning a request can reference any location on the host rather than being confined to an application-designated upload or workspace directory. The response to such a request reveals whether the referenced file or directory exists, turning the endpoint into an existence oracle. An attacker does not read file contents — the confidentiality impact is limited to boolean existence disclosure (C:L) — but the response is deterministic and easily automated.
The attack surface is the network-exposed HTTP kernel API, typically bound to the SiYuan kernel's default listener port (6806/tcp in the project's standard configuration). Because the vulnerability requires no privileges (PR:N), no user interaction (UI:N), and no special conditions (AC:L), any host that can reach the SiYuan API can probe the filesystem. The CVSS scope change (S:C) reflects that the vulnerable component — the SiYuan kernel — yields information about a separate security scope, the underlying host operating system. There is no integrity or availability impact (I:N, A:N). EPSS places the CVE at 0.00194 (9.4% percentile of exploited CVEs), and CISA KEV does not list it, indicating low observed in-the-wild exploitation, though the absence of a tracked patch raises the risk for exposed instances.
Exploitation Scenarios
No public proof-of-concept, Nuclei template, or exploit code is available at the time of writing. The attack chain below is therefore inferred from the vulnerability class and the NVD description, not from a confirmed exploit.
- Reconnaissance / target identification. The attacker scans for internet-reachable SiYuan instances using fingerprinting of the web interface and the kernel's default listener port (e.g., Shodan queries such as
http.title:"SiYuan"orport:6806). Self-hosted SiYuan deployments with the kernel port exposed to the internet or to an untrusted internal segment are viable targets. - Triggering the flaw. The attacker sends an HTTP request to the
getUniqueFilenameendpoint without authenticating. The request includes an arbitrary absolute path — for example, a Unix path such as/etc/passwdor/root/.ssh, or a Windows path such asC:\Windows\System32. Because the endpoint performs no validation, confinement, or authorization check, it evaluates the supplied path. - Payload / execution mechanism. At the vulnerability-class level, the endpoint acts as an oracle: its success/error response (or a difference in generated filename output) correlates with whether the target path exists. The attacker automates a path wordlist covering
/etc/,/home/,/root/,/opt/,/usr/, common application config directories, and Windows equivalents, then records which paths resolve. The payload is the path itself; no code execution is involved. - Post-exploitation impact. The gathered existence data enables filesystem layout mapping and software inventorying: presence of specific user directories, SSH key locations, package-manager caches, container/sandbox mount points, security tooling, and application install paths. This reconnaissance feeds follow-on attacks — for example, chaining with a file-read or remote-code-execution flaw in another component, or targeting known configuration file locations for credential theft. The information disclosure itself does not grant access, but it materially improves the attacker's ability to craft effective subsequent exploits.
Impact Assessment
The business impact of CVE-2026-73605 is primarily pre-exploitation intelligence collection against self-hosted SiYuan deployments. For an enterprise, an unauthenticated attacker who can reach the SiYuan kernel API can map the underlying operating system's file and directory structure: OS type and version hints, installed user accounts, application install paths, and presence of sensitive configuration locations. The CVSS vector (AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N) quantifies this as low confidentiality impact with no integrity or availability loss, but the scope change is significant: the information leaked belongs to the host, not merely to the application. The absence of authentication requirements and user interaction makes mass scanning and automated probing straightforward.
The blast radius is limited to instances with network-reachable kernel APIs; deployments bound to loopback only, or fronted by an enforced authentication proxy, are not exposed. That said, the risk is amplified by the patch situation: patch confidence is 0/4 — no official vendor advisory or patch source is tracked — so affected deployments may remain vulnerable indefinitely unless the operator identifies and applies the v3.7.4 update referenced by the NVD description. EPSS (0.00194) and the absence from CISA KEV indicate low current exploitation activity, but the vulnerability's trivial trigger conditions (one HTTP request, no auth) mean exposure is the deciding factor. In environments where SiYuan is accessible to untrusted users, this should be treated as a medium-priority reconnaissance risk rather than a direct compromise primitive.
Detection Guidance
The following rules are detection templates for the attack pattern described in CVE-2026-73605: unauthenticated requests to the getUniqueFilename endpoint carrying absolute-path payloads. Tune local baselines before deployment; false positives may occur if legitimate client workflows send absolute paths to the kernel.
Sigma Rule
title: SiYuan getUniqueFilename Absolute-Path Filesystem Probing Attempt
id: 7d8f2c4a-5b3e-4c1a-9d2f-2a6e9b7e3c01
status: experimental
description: >
Detects HTTP requests to the SiYuan getUniqueFilename endpoint containing
absolute-path arguments (Unix or Windows), indicating filesystem existence
probing per CVE-2026-73605.
references:
- https://nvd.nist.gov/vuln/detail/CVE-2026-73605
author: Valters IT Threat Intelligence
date: 2026/06/01
logsource:
category: webserver
product: generic
detection:
selection_endpoint:
cs-uri-path|endswith: getUniqueFilename
selection_absolutepath:
cs-uri-query|contains:
- '/etc/'
- '/root/'
- '/home/'
- '/opt/'
- '/usr/'
- 'C:'
- '..%2f'
- '%2fetc%2f'
condition: selection_endpoint and selection_absolutepath
fields:
- clientip
- cs-uri-query
- sc-status
falsepositives:
- Legitimate enterprise integrations that pass absolute paths to the kernel
- Backup or import workflows referencing source directories
level: high
tags:
- attack.discovery
- attack.t1083
- cve.2026-73605
YARA Rule
rule CVE_2026_73605_SiYuan_getUniqueFilename_Probe
{
meta:
author = "Valters IT Threat Intelligence"
description = "Detects HTTP artifacts/log lines referencing the SiYuan getUniqueFilename endpoint combined with absolute-path payloads indicative of filesystem existence probing (CVE-2026-73605)"
reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-73605"
date = "2026-06-01"
cve = "CVE-2026-73605"
score = 60
strings:
$s_endpoint = "getUniqueFilename"
$s_etc = "/etc/"
$s_root = "/root/"
$s_home = "/home/"
$s_win1 = "C:\\"
$s_win2 = "C:/"
$s_enc = "%2fetc%2f"
$s_dotdot = "..%2f"
condition:
$s_endpoint and 2 of ($s_*)
}
Suricata IDS Rule
alert http any any -> $HOME_NET any (msg:"CVE-2026-73605 SiYuan getUniqueFilename absolute-path probing attempt"; flow:established,to_server; content:"getUniqueFilename"; http.uri; pcre:"/getUniqueFilename[^\r\n]*(?:(?:%2[fF]|\/)(?:etc|root|home|opt|usr)(?:%2[fF]|\/)|C:[\\\/]|\.\.%2[fF])/iU"; classtype:attempted-recon; reference:cve,2026-73605; sid:202673605; rev:1;)
Elastic Detection
network where event.category == "network" and destination.port == 6806 and
wildcard(url.path, "*getUniqueFilename") and
(
wildcard(url.full, "*/etc/*", "*/root/*", "*/home/*", "*C:/*", "*C:\\*") or
wildcard(url.query, "*..%2f*", "*%2fetc%2f*", "*%2Fetc%2F*")
)
Splunk SPL Query
index=web* sourcetype=access_combined
| where like(uri_path, "%getUniqueFilename%")
| regex uri_query="(?i)(/etc/|/root/|/home/|/opt/|C:\\|C:/|\.\.%2f|%2fetc%2f)"
| stats count min(_time) as first_seen max(_time) as last_seen by src_ip, uri, method, status
| sort - count
Wazuh OSSEC Rule
<group name="siyuan,">
<rule id="100736" level="12" frequency="5" timeframe="60">
<decoded_as>web</decoded_as>
<match>getUniqueFilename</match>
<regex>(\/etc\/|\/root\/|\/home\/|C:\\|%2fetc%2f|\.\.%2f)</regex>
<description>CVE-2026-73605 - SiYuan getUniqueFilename filesystem existence probe detected</description>
<group>siyuan,cve,vulnerability,attempted-recon,</group>
<cve>CVE-2026-73605</cve>
</rule>
</group>
Mitigation & Patch Guidance
Patch confidence for CVE-2026-73605 is 0/4 — no patch evidence exists in any tracked source, and the vendor fix is listed as N/A. The NVD description states that affected versions are "before v3.7.4," which implies v3.7.4 is the remediating release, but this is not corroborated by a tracked vendor advisory, so operators must validate the update themselves.
Immediate mitigations (until a verified fix is in place):
- Restrict network access to the SiYuan kernel API: firewall off the default listener port (6806/tcp) from the internet and from untrusted network segments. Bind the kernel to loopback if remote access is not explicitly required.
- Place any externally reachable SiYuan instance behind a reverse proxy that enforces mandatory authentication (e.g., SSO, mTLS, or VPN) so the API is never reachable anonymously.
- Monitor web/API access logs for requests to
getUniqueFilenamecontaining absolute paths and treat them as suspected reconnaissance. - Apply an ingress WAF rule blocking absolute-path parameters to this endpoint (Unix paths beginning with
/, Windows drive-letter paths, and URL-encoded variants).
Patch/upgrade steps:
- Identify the current SiYuan version; if it is below v3.7.4, plan an upgrade to v3.7.4 or later after validating release integrity against the official project repository (siyuan-note/siyuan).
- Verify that the upgraded version no longer returns existence information for arbitrary absolute paths to anonymous requests; run a controlled test against a staging instance.
- Re-check patch sources (NVD, vendor release notes, security advisories) for an official CVE-2026-73605 advisory before declaring the issue resolved.
Long-term hardening:
- Segment self-hosted collaboration and knowledge-base services into a dedicated network zone with strict egress/ingress rules.
- Enforce least privilege on the underlying OS account that runs the SiYuan kernel to limit the value of filesystem reconnaissance.
- Implement file integrity monitoring on service hosts and centralize access logs to a SIEM with alerting for the detection rules above.
- Establish a recurring vulnerability-scanning cadence covering self-hosted applications so CVEs such as this are identified before adversaries do.
References
- NVD (National Vulnerability Database) — CVE-2026-73605: https://nvd.nist.gov/vuln/detail/CVE-2026-73605
- CVE.org Record — CVE-2026-73605: https://www.cve.org/CVERecord?id=CVE-2026-73605
- FIRST EPSS — CVE-2026-73605 score lookup: https://www.first.org/epss/
- SiYuan official project repository (for release validation / v3.7.4): https://github.com/siyuan-note/siyuan
- CISA Known Exploited Vulnerabilities catalog: https://www.cisa.gov/known-exploited-vulnerabilities-catalog (CVE-2026-73605 is not currently listed)
No vendor advisory, researcher blog, threat-actor campaign, or exploit-in-the-wild evidence is publicly available for CVE-2026-73605 at the time of writing; the absence from CISA KEV and the low EPSS percentile are consistent with no confirmed active exploitation.
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.