low3.7
CVE-2026-72701
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 h…
Impact
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 packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| composer | getgrav/grav | <= 2.0.15 | 2.0.16 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-38p6-h87p-r4cg
- https://github.com/getgrav/grav/security/advisories/GHSA-38p6-h87p-r4cg
- https://nvd.nist.gov/vuln/detail/CVE-2026-72701
- https://www.vulncheck.com/advisories/grav-cms-before-timing-attack-via-verifynonce
- https://github.com/getgrav/grav/commit/a076b9073abc51c1df924529d65773e44950c5c4
- https://github.com/getgrav/grav/releases/tag/2.0.16