PatchSiren cyber security CVE debrief
CVE-2026-72701 getgrav CVE debrief
The CVE-2026-72701 vulnerability in Grav CMS before 2.0.16 involves a timing issue in the Utils::verifyNonce() function. This function uses non-constant-time string comparison with the === operator for CSRF nonce validation, allowing attackers to measure response timing differences and recover valid nonce values byte-by-byte through multiple requests. This weakness in CSRF protection can be exploited by attackers to bypass security measures. Administrators and security teams should be aware of this vulnerability and take necessary defensive actions to mitigate potential attacks. The CVE record was published on 2026-08-25T02:16:45.980Z and has not been modified since then.
- Vendor
- getgrav
- Product
- grav
- CVSS
- MEDIUM 6.3
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-08-25
- Original CVE updated
- 2026-08-31
- Advisory published
- 2026-08-25
- Advisory updated
- 2026-08-31
Who should care
Administrators and security teams responsible for Grav CMS installations, particularly those using versions before 2.0.16, should be aware of this vulnerability and take necessary defensive actions to mitigate potential attacks. This includes reviewing and enhancing CSRF protection mechanisms, monitoring for unusual request patterns, and applying vendor-provided patches or updates.
Technical summary
The Utils::verifyNonce() function in Grav CMS before 2.0.16 uses non-constant-time string comparison with the === operator for CSRF nonce validation. This allows attackers to measure response timing differences and recover valid nonce values byte-by-byte through multiple requests, weakening CSRF protection below its intended security margin. The vulnerability has a CVSS score of 6.3 and is classified as MEDIUM severity.
Defensive priority
Medium-priority defensive actions are recommended due to the potential for attackers to exploit this vulnerability in Grav CMS versions before 2.0.16.
Recommended defensive actions
- Inventory and version checks for Grav CMS installations
- Application of vendor-provided patches or updates
- Monitoring for unusual request timing patterns
- Enhancement of CSRF protection mechanisms
- Review of nonce validation processes
- Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up.
- Review compensating controls for exposed systems while remediation is scheduled and verified.
Evidence notes
Evidence from the CVE Program and NVD suggests a timing vulnerability exists in Grav CMS before 2.0.16. The Utils::verifyNonce() function uses non-constant-time string comparison, allowing attackers to recover valid nonce values through response timing differences. Limited source detail is available, so defenders should verify affected scope and vendor guidance while reviewing compensating controls.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-72701 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-72701
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-72701 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-72701
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
Source reference
Unverified legacy reference
URL: https://github.com/getgrav/grav/security/advisories/GHSA-38p6-h87p-r4cg
-
Source reference
Unverified legacy reference
URL: https://www.vulncheck.com/advisories/grav-cms-before-timing-attack-via-verifynonce
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.