Skip to content
Heist/ feed
Back to feed
High

YesWiki: Unauthenticated Server-Side Request Forgery via ActivityPub `Signature.keyId`

Type: advisorySources: OSV

YesWiki is a wiki system written in PHP. From version 4.6.2 to before version 4.6.6, the POST /api/forms/{formId}/actor/inbox route - exposed publicly with acl:"public" - accepts an HTTP Signature header whose keyId parameter is a URL. HttpSignatureService::verifySignature() parses the header and immediately makes a server-side HTTP GET to that URL, before any cryptographic verification or URL validation. An unauthenticated remote attacker can therefore make YesWiki issue arbitrary outbound HTTP requests to any host the server can reach - internal services, cloud-metadata endpoints (169.254.169.254), intranet-only admin panels, etc. - and read enough back via timing and error-message oracles to scan ports, enumerate services, and (on a real cloud instance) reach IAM metadata. The only deployment-side precondition is that ActivityPub be enabled on at least one Bazar form. This issue has been patched in version 4.6.6.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-52769
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 23:40 UTC · Revision 1

Source evidence

YesWiki: Unauthenticated Server-Side Request Forgery via ActivityPub `Signature.keyId`

core-osv · Original source

Published 4 Sept 2026, 23:40 UTC

YesWiki is a wiki system written in PHP. From version 4.6.2 to before version 4.6.6, the POST /api/forms/{formId}/actor/inbox route - exposed publicly with acl:"public" - accepts an HTTP Signature header whose keyId parameter is a URL. HttpSignatureService::verifySignature() parses the header and immediately makes a server-side HTTP GET to that URL, before any cryptographic verification or URL validation. An unauthenticated remote attacker can therefore make YesWiki issue arbitrary outbound HTTP requests to any host the server can reach - internal services, cloud-metadata endpoints (169.254.169.254), intranet-only admin panels, etc. - and read enough back via timing and error-message oracles to scan ports, enumerate services, and (on a real cloud instance) reach IAM metadata. The only deployment-side precondition is that ActivityPub be enabled on at least one Bazar form. This issue has been patched in version 4.6.6.

osv:CVE-2026-52769
Complete source record
{
  "id": "0cd3a7438a77ec2c55064a417af97d583fb0ee34288eac654e9410f7e2d725a9",
  "url": "https://osv.dev/vulnerability/CVE-2026-52769",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "YesWiki: Unauthenticated Server-Side Request Forgery via ActivityPub `Signature.keyId`",
    "summary": "YesWiki is a wiki system written in PHP. From version 4.6.2 to before version 4.6.6, the POST /api/forms/{formId}/actor/inbox route - exposed publicly with acl:\"public\" - accepts an HTTP Signature header whose keyId parameter is a URL. HttpSignatureService::verifySignature() parses the header and immediately makes a server-side HTTP GET to that URL, before any cryptographic verification or URL validation. An unauthenticated remote attacker can therefore make YesWiki issue arbitrary outbound HTTP requests to any host the server can reach - internal services, cloud-metadata endpoints (169.254.169.254), intranet-only admin panels, etc. - and read enough back via timing and error-message oracles to scan ports, enumerate services, and (on a real cloud instance) reach IAM metadata. The only deployment-side precondition is that ActivityPub be enabled on at least one Bazar form. This issue has been patched in version 4.6.6.",
    "evidence": "osv:CVE-2026-52769",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-52769",
      "aliases": [
        "CVE-2026-52769",
        "GHSA-vw42-752g-5mrp"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/yeswiki/yeswiki",
              "type": "GIT",
              "events": [
                {
                  "introduced": "396b5fb891fdeca1a010c97d3cfe4d7ff897110b"
                },
                {
                  "fixed": "fa81922f4103630911cbea98ead3c4b7bc786e19"
                },
                {
                  "fixed": "87e627f33e79879827a3669fee2aa1244612c487"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "4.6.2"
                      },
                      {
                        "fixed": "4.6.6"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "fa81922f4103630911cbea98ead3c4b7bc786e19"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "v4.6.6"
                  },
                  {
                    "range": [
                      {
                        "fixed": "87e627f33e79879827a3669fee2aa1244612c487"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v4.6.5",
            "v4.6.4",
            "v4.6.3",
            "v4.6.2"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-52769.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:40.538113799Z",
      "provider": "osv",
      "references": [
        "https://github.com/YesWiki/yeswiki/releases/tag/v4.6.6",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52769.json",
        "https://github.com/YesWiki/yeswiki/security/advisories/GHSA-vw42-752g-5mrp",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-52769"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-918"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52769.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-52769",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 508078,
  "published_at": "2026-09-04T23:40:58.793+00:00"
}