Summary
CVE-2026-104458 is a Server-Side Request Forgery (SSRF) vulnerability in YesWiki, an open-source wiki engine, affecting versions before 4.6.7. The flaw lies in the validateKeyIdUrl() function used to validate ActivityPub Signature.keyId URLs, which fails to canonicalize certain IPv6 transition address formats before applying its private-range filters. This allows an unauthenticated attacker to bypass the existing SSRF guard and reach internal hosts, loopback services, or cloud metadata endpoints, resulting in a High severity rating.
Technical details
- Root cause:
validateKeyIdUrl()(inHttpSignatureService) blocks raw IPv4 addresses and IPv4-mapped IPv6 addresses (::ffff:x.x.x.x), but does not detect or unwrap three IPv6 transition formats that embed an IPv4 target: 6to4 (2002::/16), NAT64 (64:ff9b::/96), and IPv4-compatible IPv6 (::a.b.c.d). These pass the guard as ordinary global IPv6 addresses. - Trigger conditions: The attacker submits a crafted HTTP
Signatureheader whosekeyIdfield contains a URL using one of the unfiltered IPv6 transition formats, pointing at an internal or restricted target (e.g.,https://[64:ff9b::a9fe:a9fe]/latest/meta-data/iam/, which resolves to the AWS metadata address169.254.169.254). - Attack vector: The request is sent to the public, unauthenticated
POST /api/forms/{formId}/actor/inboxActivityPub route, which is reachable whenever ActivityPub support is enabled on a Bazar form. - Impact: The server performs an outbound HTTP(S) request to the attacker-chosen internal address on the attacker’s behalf, which can expose cloud metadata services, loopback-bound services, and other internal/RFC1918 hosts. Error responses can also leak information about the requested URL, enabling internal port/service enumeration. No authentication is required.
Affected software
- YesWiki versions prior to 4.6.7 (all builds containing the
validateKeyIdUrl()SSRF guard) - Fixed in YesWiki 4.6.7
Severity
- CVSS v3.1 Base Score: 6.5 (Medium) —
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N - CVSS v4.0 Base Score: 8.3 (High) —
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
Mitigation and recommended actions
- Immediate: Upgrade YesWiki to version 4.6.7 or later, which addresses the incomplete IPv6 validation in
validateKeyIdUrl(). - If no patch can be applied immediately: Disable ActivityPub functionality on Bazar forms, or restrict network/access-control exposure to the
POST /api/forms/{formId}/actor/inboxendpoint until the upgrade can be performed. Consider egress filtering from the application server to block outbound requests to loopback, RFC1918, and cloud metadata address ranges as a defense-in-depth measure.

