{"id":"CVE-2026-72831","revision":"da5e9e1ac55b4969bce29ded3cf14429","records":[{"revision":"da5e9e1ac55b4969bce29ded3cf14429","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-72831","aliases":[],"title":"Grav through 2.0.11 Authentication Bypass via Flex Objects","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.","state":0,"publishedAt":"2026-08-14T11:35:37.801+00:00","modifiedAt":"2026-08-28T15:18:30.795+00:00","affected":[{"ecosystem":"Vendor product","name":"grav","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"getgrav\",\n                    \"product\": \"grav\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"versions\": [\n                        {\n                            \"version\": \"2.0.11\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\",\n                            \"lessThanOrEqual\": \"2.0.11\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"grav","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"getgrav\",\n                    \"product\": \"grav\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"versions\": [\n                        {\n                            \"version\": \"0\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\",\n                            \"lessThan\": \"1.4.7\"\n                        },\n                        {\n                            \"version\": \"1.4.7\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 4.0","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","score":8.7,"severity":"HIGH"},{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","score":8.8,"severity":"HIGH"}],"references":["https://github.com/getgrav/grav/security/advisories/GHSA-pc8m-jxvh-vmrc","https://github.com/getgrav/grav/commit/ad9709f865b09b68798fb1ac375b484a8cc1d892","https://github.com/trilbymedia/grav-plugin-flex-objects/commit/0b384f5b0e73b1ad9dd29c70185407895ea3b09f","https://github.com/getgrav/grav-plugin-api/commit/8071c10bc3a4743a4b8cf003dfb1644d6680c2ea","https://github.com/getgrav/grav-plugin-admin2/commit/a0bf26f7e5d7a98894b7cd2b8c5afe419b264e53","https://www.vulncheck.com/advisories/grav-through-authentication-bypass-via-flex-objects"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-72831","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-72831","identifiers":["CVE-2026-72831"]},"retained":false,"historicalAffected":[]}],"coverage":[]}