Description
The Flex Objects plugin (through 1.4.6, tested with Grav 2.0.11) contains an incorrect authorization vulnerability in its Flex Objects API. FlexApiController::update() checks only the general Flex directory permission and does not apply the additional target/field/super-admin checks enforced by the dedicated Users and Groups API controllers. An authenticated account with api.access, admin.login, and users.update permissions (but without api.users.write or admin.super) can use the generic /api/v1/flex-objects/user-accounts endpoint to change a super administrator's password, or the /api/v1/flex-objects/user-groups endpoint to grant its group admin.super, resulting in full site takeover. Fixed in Flex Objects 1.4.7.
Published: 2026-08-14
Score: 8.7 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Flex Objects plugin for Grav 2.0.11 contains an incorrect authorization check in its FlexApiController::update() method. The API allows an authenticated user who has api.access, admin.login, and users.update permissions (but no api.users.write or admin.super) to target the generic /api/v1/flex-objects/user-accounts or /api/v1/flex-objects/user-groups endpoints. Using these endpoints, the attacker can change a super administrator's password or grant their own group admin.super privileges, effectively acquiring full control of the site. This vulnerability is a classic Missing Authorization flaw (CWE-863).

Affected Systems

The affected systems are websites running Grav CMS version 2.0.11 with the Flex Objects plugin version 1.4.6 or earlier. The vulnerability was fixed in Flex Objects 1.4.7, so any install that has updated to that version or later is no longer vulnerable. Other Grav versions are not stated as affected, but the same plugin version applies.

Risk and Exploitability

The CVSS score of 8.7 indicates High severity, and the lack of an EPSS score does not provide a current exploitation probability. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires an already authenticated account with particular API permissions, so an attacker who can log in or gain credentials within the site can immediately exercise the exploit via HTTP requests to the affected API endpoints. Because the attack vector is authenticated API access, sites that expose the Flex Objects API to the public or have users with unnecessary permissions represent a high risk of full site takeover.

Generated by OpenCVE AI on August 14, 2026 at 12:23 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Flex Objects plugin to version 1.4.7 or later.
  • Restrict API permissions by removing api.access, admin.login, or users.update from accounts that do not require them, and ensure no group has admin.super without explicit need.
  • If upgrading is not immediately possible, disable or protect the /api/v1/flex-objects/* endpoints behind a firewall or authentication boundary, or temporarily block API access for unauthenticated users.

Generated by OpenCVE AI on August 14, 2026 at 12:23 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 28 Aug 2026 16:30:00 +0000


Fri, 28 Aug 2026 15:30:00 +0000


Thu, 20 Aug 2026 02:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Fri, 14 Aug 2026 11:45:00 +0000

Type Values Removed Values Added
Description The Flex Objects plugin (through 1.4.6, tested with Grav 2.0.11) contains an incorrect authorization vulnerability in its Flex Objects API. FlexApiController::update() checks only the general Flex directory permission and does not apply the additional target/field/super-admin checks enforced by the dedicated Users and Groups API controllers. An authenticated account with api.access, admin.login, and users.update permissions (but without api.users.write or admin.super) can use the generic /api/v1/flex-objects/user-accounts endpoint to change a super administrator's password, or the /api/v1/flex-objects/user-groups endpoint to grant its group admin.super, resulting in full site takeover. Fixed in Flex Objects 1.4.7.
Title Grav through 2.0.11 Authentication Bypass via Flex Objects
First Time appeared Getgrav
Getgrav grav
Weaknesses CWE-863
CPEs cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*
Vendors & Products Getgrav
Getgrav grav
References
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 8.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-28T15:18:30.795Z

Reserved: 2026-08-10T15:12:59.509Z

Link: CVE-2026-72831

cve-icon Vulnrichment

Updated: 2026-08-18T01:59:42.791Z

cve-icon NVD

Status : Deferred

Published: 2026-08-14T12:16:46.400

Modified: 2026-08-31T20:52:56.343

Link: CVE-2026-72831

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-14T12:45:17Z

Weaknesses