Duplicate Advisory: Grav: Non constant time nonce comparison in Utils::verifyNonce() used for CSRF protection
Moderate severity
GitHub Reviewed
Published
Aug 25, 2026
to the GitHub Advisory Database
•
Updated Sep 17, 2026
Withdrawn
This advisory was withdrawn on Sep 17, 2026
Description
Published by the National Vulnerability Database
Aug 25, 2026
Published to the GitHub Advisory Database
Aug 25, 2026
Reviewed
Sep 17, 2026
Withdrawn
Sep 17, 2026
Last updated
Sep 17, 2026
Duplicate Advisory
This advisory has been withdrawn because it is a duplicate of GHSA-38p6-h87p-r4cg. This link is maintained to preserve external references.
Original Description
Grav CMS before 2.0.16 contains a timing vulnerability in Utils::verifyNonce() that uses non-constant-time string comparison with the === operator instead of hash_equals() for CSRF nonce validation. Attackers can measure response timing differences to recover valid nonce values byte-by-byte through multiple requests, weakening CSRF protection below its intended security margin.
References