CVE Catalog

CVE-2026-52767

HighCVSS 8.2
Published: Translated: NVD NIST

Summary

YesWiki from version 4.6.2 to before 4.6.6 has a vulnerability in HttpSignatureService::verifySignature(), which checks the result of openssl_verify() with a loose boolean negation. Since PHP treats -1 as truthy, the condition !(-1) is false, causing the error to be skipped and processing to continue even when signature verification failed.

Risk Assessment

An attacker can bypass signature verification and send unauthorized requests that are processed as valid, potentially leading to unauthorized actions in the system.

Recommendation

Upgrade to version 4.6.6 and fix the verification logic to explicitly check for value 1.

Other vulnerabilities in YesWiki

See all
Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS