Summary
Rapyd Admin contains an authorization bypass in the UsersModalEditEmbed Livewire component that allows authenticated company members with the default customer role to modify or delete user accounts they should not control. By targeting predictable user identifiers, an attacker may reset privileged passwords, promote their account, or remove other users.
Rapyd Admin contains an authorization bypass in the UsersModalEditEmbed Livewire component that allows authenticated company members with the default customer role to modify or delete user accounts they should not control. By targeting predictable user identifiers, an attacker may reset privileged passwords, promote their account, or remove other users.
Affected context
The vulnerability affects Rapyd Admin deployments using versions 9.0.0 through before 9.20.0 when the UsersModalEditEmbed Livewire component processes user-management actions without adequately verifying whether the requesting member is authorized to act on the targeted account. Risk is highest where authenticated customer-role users can reach the relevant component and user identifiers are predictable.
The vulnerability affects Rapyd Admin deployments using versions 9.0.0 through before 9.20.0 when the UsersModalEditEmbed Livewire component processes user-management actions without adequately verifying whether the requesting member is authorized to act on the targeted account. Risk is highest where authenticated customer-role users can reach the relevant component and user identifiers are predictable.
Exploit preconditions
- Attack surface: User-management actions exposed through the UsersModalEditEmbed Livewire component
- Required access: An authenticated company member with the default customer role
- Trigger point: Dispatching edit or delete actions for a selected user identifier
- Why exploitation is possible: The application may rely on the supplied user identifier without enforcing object-level authorization for the requested operation
- Attack surface: User-management actions exposed through the UsersModalEditEmbed Livewire component
- Required access: An authenticated company member with the default customer role
- Trigger point: Dispatching edit or delete actions for a selected user identifier
- Why exploitation is possible: The application may rely on the supplied user identifier without enforcing object-level authorization for the requested operation
Why this happens
The underlying flaw is missing or insufficient object-level authorization, mapped to CWE-639: Authorization Bypass Through User-Controlled Key. The component accepts a user-controlled identifier and performs account-management operations without consistently confirming that the requester has permission to modify that specific account. Predictable sequential identifiers can make unauthorized targets easier to select, but the fundamental issue is the absence of a reliable server-side authorization decision for each object and action.
The underlying flaw is missing or insufficient object-level authorization, mapped to CWE-639: Authorization Bypass Through User-Controlled Key. The component accepts a user-controlled identifier and performs account-management operations without consistently confirming that the requester has permission to modify that specific account. Predictable sequential identifiers can make unauthorized targets easier to select, but the fundamental issue is the absence of a reliable server-side authorization decision for each object and action.
Potential impact
- Attackers may modify accounts outside their permitted scope
- Privileged passwords could be reset
- An attacker may be able to promote an account to an owner-level role
- User accounts may be deleted, affecting availability and administration
- Administrative control of the application could be compromised
- Attackers may modify accounts outside their permitted scope
- Privileged passwords could be reset
- An attacker may be able to promote an account to an owner-level role
- User accounts may be deleted, affecting availability and administration
- Administrative control of the application could be compromised
General mitigation guidance
Mitigation generally focuses on enforcing object-level authorization at the server for every user-management operation.
Common defensive patterns include:
- Denying management actions by default for customer roles
- Checking both the requested action and target account against the requester's effective permissions
- Centralizing authorization policies rather than relying on component-level assumptions
- Avoiding trust in client-supplied identifiers, while treating opaque identifiers only as defense in depth
- Requiring stronger controls for password resets, role changes, and account deletion
- Applying least privilege to administrative roles and separating sensitive account-management capabilities
- Recording and reviewing authorization failures and high-impact account changes
Mitigation generally focuses on enforcing object-level authorization at the server for every user-management operation.
Common defensive patterns include:
- Denying management actions by default for customer roles
- Checking both the requested action and target account against the requester's effective permissions
- Centralizing authorization policies rather than relying on component-level assumptions
- Avoiding trust in client-supplied identifiers, while treating opaque identifiers only as defense in depth
- Requiring stronger controls for password resets, role changes, and account deletion
- Applying least privilege to administrative roles and separating sensitive account-management capabilities
- Recording and reviewing authorization failures and high-impact account changes
How teams detect issues like this
Organizations can look for this weakness through:
- Static analysis and code review of Livewire action handlers for direct model access based on request parameters
- Review signals where edit, delete, password-reset, or role-change methods lack explicit policy or permission checks
- Authorization tests that exercise every management action across customer, administrator, and owner roles
- Monitoring for repeated requests involving sequential or out-of-scope user identifiers
- Policy enforcement requiring server-side authorization checks before sensitive object mutations
- Neutral automated review tools that flag user-controlled keys used in privileged database operations
Organizations can look for this weakness through:
- Static analysis and code review of Livewire action handlers for direct model access based on request parameters
- Review signals where edit, delete, password-reset, or role-change methods lack explicit policy or permission checks
- Authorization tests that exercise every management action across customer, administrator, and owner roles
- Monitoring for repeated requests involving sequential or out-of-scope user identifiers
- Policy enforcement requiring server-side authorization checks before sensitive object mutations
- Neutral automated review tools that flag user-controlled keys used in privileged database operations

