CVE-2026-72701

Summary

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.

Affected Software

VendorProductVersion RangeStatus
getgravgrav0 < 2.0.16affected
getgravgrav2.0.16unaffected

Weaknesses

  • CWE-208: Observable Timing Discrepancy

References