CVE-2026-52767 YesWiki: Unauthenticated ActivityPub Signature-Verification Bypass via `!openssl_verify(...)` accepting `int(-1)`
Attackers can bypass ActivityPub signature verification in YesWiki by exploiting PHP truthiness rules, allowing unauthenticated processing of malicious payloads.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-52767?
CVE-2026-52767 is a high-severity vulnerability in yeswiki, published on 4 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
YesWiki is a wiki system written in PHP. From version 4.6.2 to before version 4.6.6, HttpSignatureService::verifySignature() checks the result of PHP's openssl_verify() with a loose boolean negation - if (!openssl_verify(...)) { throw ... }. PHP's openssl_verify has four possible return values: 1, 0, -1, and "false". The -1 row is the bypass: PHP's truthiness rules make -1 a truthy value, so !(-1) === false, the throw is skipped, and the controller proceeds to processActivity(). Any condition that makes OpenSSL's EVP_VerifyFinal() return -1 triggers the bypass. The reachable consequence is the controller silently treats a failed verification as success and processes the attacker's payload. This issue has been patched in version 4.6.6.
Weakness: CWE-347
Which versions are affected by CVE-2026-52767?
2 open source packages ship an affected version, including yeswiki/yeswiki.
| Package | Affected | Fixed in |
|---|---|---|
yeswiki/yeswiki Packagist | From 4.6.2 | 4.6.6 |
yeswiki/yeswiki Packagist | From 4.6.2 | 4.6.6 |
How do I fix CVE-2026-52767?
Upgrade yeswiki/yeswiki to 4.6.6 or later.
Is CVE-2026-52767 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-52767 exists.
Sources
Also known as GHSA-mv28-wj57-f57g.