Auth bypass in Getgrav Grav

CVE-2026-72823

The Grav API plugin (getgrav/grav-plugin-api) before 1.0.13 contains an API-key scope cap bypass in DemoController. Its private requireSuper() method checks isSuperAdmin() and returns early before invoking requirePermission(), so the api_key_scopes cap (enforced only in requirePermission()) is skipped. As a result, any scoped API key minted on a super account can bypass its scope restrictions when calling the baseline() and reset() operations (e.g. POST /api/v1/demo/reset), allowing it to capture the demo baseline or force a demo reset. Impact is bounded to demo-engine control and is conditional on demo mode being configured with writable resources.

Vulnerability class: Broken Access Control

CVSS v3 metric

CVSS v3 base score 5.4 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L.

Affected products

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2026-72823?
CVE-2026-72823 is a medium-severity vulnerability in Getgrav Grav, classified under Missing Authorization. CVSS score: 5.4/10. Published 2026-08-14.
How severe is CVE-2026-72823?
Medium severity. CVSS v3 base score is 5.4 out of 10.