Description
Grav API Plugin versions before 1.0.10 fail to validate the groups field in InvitationsController::create(), allowing authenticated api.users.write callers to assign invited accounts to groups that grant api.super permissions. Attackers can create invitation records with elevated group membership, and when accepted, the new account gains full super-admin API access without the inviter holding those permissions.
CVSS breakdown
CVSS 4.0
Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Confidentiality (Vulnerable System)
High
Integrity (Vulnerable System)
High
Availability (Vulnerable System)
High
Confidentiality (Subsequent System)
None
Integrity (Subsequent System)
None
Availability (Subsequent System)
None
CVSS 3.1
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
Affected products
- getgrav / grav0 – 1.0.10
- getgrav / grav1.0.10 – 1.0.10
References
- VENDOR_ADVISORYhttps://github.com/getgrav/grav/security/advisories/GHSA-m86m-jjcg-gcvv
- PATCHhttps://github.com/getgrav/grav-plugin-api/commit/f9438d4e71389b1041ac60b69b0b5714ecfa3bdd
- PATCHhttps://github.com/getgrav/grav/commit/345e79e3abf8c15f80e612a09f6643300071324b
- VENDOR_ADVISORYhttps://www.vulncheck.com/advisories/grav-api-plugin-privilege-escalation-via-invitations-groups
Updated 32m ago · 8 sources