Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconAuthenticate to SiYuan instance
-
DeliveryCraft hostname resolving to IPv6 transition address (NAT64/6to4/Teredo) encoding private IPv4 target
-
ExploitSubmit crafted URL to forward/WebSocket/SSE proxy endpoint
-
InstallisPrivateIP fails to classify transition address, SSRFSafeDialer permits connection
-
C2Reach internal service or cloud metadata endpoint (169.254.169.254)
-
ExecuteRead full response body
-
ImpactExfiltrate IAM credentials or internal service data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | SafeMode must be explicitly enabled on the SiYuan instance - this is the hard prerequisite, as SafeMode is what invokes SSRFSafeDialer and the vulnerable isPrivateIP check. Without SafeMode, the code path containing the vulnerability is not active (though SSRF protections would also be absent). The attacker must be authenticated per the CVE description; however, the provided CVSS 4.0 vector specifies PR:N (no privileges required), creating an unresolved conflict - authentication requirements should be verified against the vendor advisory before assuming unauthenticated exploitation is possible. The attacker must control a URL submitted to one of three endpoints: the network forward proxy, WebSocket proxy, or SSE proxy. Exploitation further requires that the network path from the SiYuan host supports routing of IPv6 transition addresses (NAT64, 6to4, or Teredo) to their embedded private IPv4 destinations, or that the DNS resolver returns such transition addresses for attacker-controlled hostnames. Cloud-hosted instances with access to IMDSv1 endpoints represent the highest-impact targets; air-gapped or IPv4-only environments with no IPv6 transition routing are not exploitable via this technique. |
| Impact | The provided CVSS 4.0 vector (PR:N) directly conflicts with the CVE description, which states 'an authenticated attacker' - this discrepancy must be confirmed against the vendor advisory at GHSA-qq8m-8p8v-x4xg before making access-control decisions. If authentication is required (PR:L, as stated in the description), the realistic attacker pool is limited to users with existing SiYuan credentials, substantially reducing exposure for single-user self-hosted deployments. For team or shared SiYuan instances - particularly those cloud-hosted - the full-read SSRF capability is high-severity: reaching IMDSv1 endpoints (169.254.169.254) yields IAM credentials enabling lateral movement far beyond the SiYuan host itself. The SafeMode prerequisite is an additional limiting factor; environments that have not enabled SafeMode are not affected by this bypass (though they may have unrestricted SSRF exposure separately). No EPSS score is available in the provided intelligence, no KEV listing exists, and no public POC has been identified - urgency is moderate rather than immediate, though the detailed technical description substantially lowers the bar for independent exploit development. The CVSS 4.0 base score of 6.9 may understate cloud-hosted impact where credential theft has significant downstream consequences. |
| Exploit ScenarioDerived | An authenticated SiYuan user on an instance with SafeMode enabled submits a crafted URL - for example, one whose hostname resolves to 64:ff9b::a9fe:a9fe (the NAT64 encoding of 169.254.169.254) - to the network forward proxy endpoint. The isPrivateIP function evaluates the resolved IPv6 address, does not recognize it as a transition address encoding a private IPv4 destination, and permits the outbound connection. The proxy returns the full HTTP response body, yielding AWS instance metadata including IMDSv1 IAM credentials, which the attacker can immediately use for lateral movement within the cloud environment. No public POC exists at time of analysis, but the CVE description provides the precise address ranges and affected code path needed to construct one. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 18, 2026
Full-read SSRF in SiYuan before v3.7.4 allows authenticated attackers to bypass the SafeMode SSRF guard by supplying URLs whose hostnames resolve to IPv6 transition addresses - NAT64 (64:ff9b::/96), 6to4 (2002::/16), or Teredo (2001::/32) - which encode private IPv4 destinations that the isPrivateIP function in kernel/util/net.go fails to classify as internal. Because the affected forward proxy, WebSocket proxy, and SSE proxy endpoints return the full response body, a successful bypass enables exfiltration of cloud instance metadata credentials (e.g., from 169.254.169.254), enumeration of internal services, and port-scanning of internal infrastructure. No public exploit or CISA KEV listing has been identified at time of analysis, but the CVE description provides sufficient technical specificity to serve as an exploit development roadmap.
RemediationAI
Upgrade to SiYuan v3.7.4 or later, which patches the isPrivateIP function in kernel/util/net.go to include IPv6 transition address ranges (NAT64 64:ff9b::/96, 6to4 2002::/16, Teredo 2001::/32). Consult the vendor advisory at https://github.com/siyuan-note/siyuan/security/advisories/GHSA-qq8m-8p8v-x4xg for patch details and any additional mitigations. As a compensating control prior to patching, restrict network-level access to SiYuan's proxy endpoints using firewall rules or reverse-proxy ACLs, limiting access to explicitly trusted users and IPs - note that this requires network perimeter controls and does not address the underlying code defect. For cloud-hosted instances, enforcing IMDSv2 (AWS) or equivalent token-based IMDS authentication significantly reduces the value of a successful metadata endpoint SSRF by preventing unauthenticated credential retrieval via 169.254.169.254. Do not disable SafeMode as a workaround - doing so removes the SSRF protection mechanism entirely rather than fixing the bypass.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
SiYuan is an open-source personal knowledge management application written in Go. The vulnerable component is the isPrivateIP function in kernel/util/net.go, invoked by SSRFSafeDialer to enforce outbound request filtering when SafeMode is active. CWE-918 (Server-Side Request Forgery) describes the root cause: insufficient validation of user-controlled destination addresses before issuing server-side HTTP requests. The function correctly blocks loopback (127.0.0.0/8, ::1), RFC-1918 private ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16), link-local unicast (169.254.0.0/16, fe80::/10), and unspecified addresses, but does not account for IPv6 transition mechanisms - NAT64 (64:ff9b::/96) encodes an IPv4 address in the low 32 bits of the IPv6 address; 6to4 (2002::/16) embeds an IPv4 address at bits 16-47; Teredo (2001::/32) encodes both client and server IPv4 addresses within the prefix. A resolver that supports these mechanisms can map a supplied hostname to one of these transition addresses, which then routes to a private IPv4 destination while bypassing the blocklist. The affected CPE is cpe:2.3:a:siyuan-note:siyuan:*:*:*:*:*:*:*:*.
Know when Siyuan gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:L/SI:L/SA:L
SafeMode must be enabled and IPv6 transition routing required (AC:H); description specifies authenticated attacker (PR:L); full-read SSRF to internal services yields high confidentiality impact with scope change.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
SiYuan before v3.7.4 contains a server-side request forgery (SSRF) vulnerability in the isPrivateIP function in kernel/util/net.go, used by SSRFSafeDialer to enforce SSRF protection in SafeMode. The function only checks for loopback, link-local unicast, private, and unspecified addresses and does not recognize IPv6 transition addresses (NAT64 64:ff9b::/96, 6to4 2002::/16, Teredo 2001::/32) that embed private IPv4 destinations. When SafeMode is enabled, an authenticated attacker can bypass the SSRF guard via the network forward proxy, WebSocket proxy, or SSE proxy endpoints by supplying a URL whose hostname resolves to such a transition address, reaching internal services and cloud metadata endpoints (e.g., 169.254.169.254). Because the forward proxy returns the full response body, this is a full-read SSRF that can be used to steal instance credentials, reach internal services, and port-scan internal infrastructure.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
SQL injection in SiYuan personal knowledge management (versions <= v3.7.2) lets attackers pass arbitrary SQL statements
SQL injection in SiYuan personal knowledge-management software (all versions before v3.7.3) lets attackers inject arbitr
A SQL injection vulnerability was discovered in Siyuan 3.1.11 in /getHistoryItems. Rated critical severity (CVSS 9.8), t
A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the ids array parameter in /batchGetBlockAttrs. R
A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the id parameter at /getAssetContent. Rated criti
A SQL injection vulnerability has been identified in Siyuan 3.1.11 via the notebook parameter in /searchHistory. Rated c
SiYuan personal knowledge management system prior to 3.5.4 has a stored XSS vulnerability (CVSS 9.6) that allows code ex
Remote code execution in SiYuan note-taking application (before v3.6.1) allows any malicious Bazaar marketplace package
Origin-validation bypass in SiYuan Note (open-source personal knowledge management) before 3.7.0 lets any installed Chro
Reflected XSS in SiYuan knowledge management before 3.5.9.
SiYuan knowledge management system prior to 3.5.5 has a path traversal in /api/file/copyFile allowing arbitrary file ope
SiYuan version 3.0.3 allows executing arbitrary commands on the server. Rated critical severity (CVSS 9.0), this vulnera
EUVD-2026-60586
GHSA-qrjw-gxw5-x7q9
NVD
CVE.org
EPSS
Exploit-DB