Skip to main content

Rapyd Admin CVE-2026-109567

| EUVDEUVD-2026-97890 HIGH
Improper Privilege Management (CWE-269)
2026-10-12 disclosure@vulncheck.com GHSA-892p-42h6-pggx
8.6
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as operator with edit-users permission
  2. Delivery
    Open own account in UsersEdit Livewire component
  3. Exploit
    Submit admin role ID in role field
  4. Execution
    Server syncs unvalidated role to account
  5. Impact
    Gain super admin, bypass tenant scoping and impersonate users

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V8 - Authorization Least privilege enforcement
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires an authenticated account that already holds the 'edit users' permission - the shipped 'operator' role is sufficient - and access to the UsersEdit Livewire component's user-edit form; the attacker submits the admin role ID for their own account and the pre-9.20.0 server synced browser-supplied roles without validating them against assignable roles. Limiting factors: the attacker must first obtain such a delegated role (not reachable by anonymous or self-registered customer users in the UsersEdit path), and the issue is fixed in v9.20.0, where assignable roles are computed server-side and a non-super-admin can no longer add a role to itself. This is an insider/compromised-privileged-account escalation, not a default-configuration unauthenticated flaw.

Impact

This is a genuine but access-gated privilege escalation (CWE-269) in an open-source Laravel admin scaffolding package. The strongest signals are CONFIRMED and internally consistent: the vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/UI:N, VC:H/VI:H/VA:H, score 8.6) aligns with the description - a network-reachable, low-complexity attack that nonetheless requires the attacker to already hold a role carrying the 'edit users' permission (e.g. the shipped operator role), so it is NOT unauthenticated. The high impact (full admin takeover, tenant-scoping bypass, per-record authorization bypass, impersonation) is corroborated by the vendor advisory and the fix commit, which show the client-supplied role list was synced verbatim. Key risk-dampening signals are MISSING rather than conflicting: no EPSS score was provided, there is no CISA KEV listing, and no public proof-of-concept exploit was supplied (the GitHub links are the patch/source, not weaponized exploit code). Net assessment: real and worth prioritizing for anyone running Rapyd Admin 9.0.0-9.19.x with delegated user-management roles, but the PR:H prerequisite means it is an insider/compromised-operator escalation vector, not a mass-exploitable internet-facing bug - tempering the 8.6 base score in most deployments.

Exploit ScenarioDerived

A tenant operator (or any user granted the 'edit users' permission) opens the UsersEdit screen for their own account and submits the admin role ID in the role field, which the server synced without server-side validation. They instantly become super admin, escaping their tenant boundary and gaining the ability to impersonate and administer every account across all tenants. No public exploit code was supplied, but the vulnerable source lines and fixing commit are published, lowering the bar to reproduce.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 12, 2026

Improper privilege management in Rapyd Admin (the open-source Rapyd Admin scaffolding package for Laravel) versions 9.0.0 through 9.19.x lets an authenticated user who already holds the 'edit users' permission - the shipped 'operator' role is sufficient - promote their own account to the 'admin' role by submitting the admin role ID through the UsersEdit Livewire component, which prior to 9.20.0 synced browser-supplied roles without validating them against a server-side allow-list. Successful exploitation lifts tenant scoping, bypasses per-record authorization and enables impersonation of other users, including higher-privileged accounts, giving high confidentiality, integrity and availability impact within the affected installation. The flaw is fixed in v9.20.0, which computes assignable roles server-side and prevents a non-super-admin from granting a role to itself; no public exploit code and no confirmed active exploitation were identified at time of analysis, and the prerequisite of an already-delegated privileged account makes this an insider or compromised-account escalation rather than a default-configuration, unauthenticated issue.

RemediationAI

Upgrade Rapyd Admin to v9.20.0 or later - the release that computes assignable roles on the server and blocks a non-super-admin from adding any role to itself (release notes: https://github.com/zofe/rapyd-admin/releases/tag/v9.20.0, fix commit https://github.com/zofe/rapyd-admin/commit/acd6ee85f9e5ccec67199673b039c605d161406a; advisory: https://www.vulncheck.com/advisories/rapyd-admin-from-9.0.0-before-9.20.0-privilege-escalation-via-usersedit-component). If an immediate upgrade is not possible, apply compensating controls with their trade-offs: revoke the 'edit users' permission (or remove the shipped 'operator' role) from every account that does not genuinely need user administration - this closes the escalation path entirely but breaks legitimate delegated user-management workflows; if that permission must stay in use, restrict it to a small, named set of trusted administrators and remove it from any role granted to self-registered or customer-facing accounts. Because the same upstream security release also fixed a hard-coded default administrator credential (admin@laravel / admin) and stored XSS in display names and rich-text values, treat any pre-9.20.0 installation as potentially compromised: audit the users table and role/pivot tables for accounts holding the 'admin' or super-admin role that were not deliberately provisioned, force password resets and invalidate sessions for any accounts whose role assignments cannot be explained, and rotate credentials for the legacy admin@laravel account or delete it if unused. Note that patching does not retroactively undo a role assignment already written to the database, so the role audit must be performed regardless of upgrade timing.

Affected VersionsENISA

rapyd-admin 9.0.0 <9.20.0

Affected Packages

euvd rapyd_admin fix: 9.20.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause is CWE-269 (Improper Privilege Management) in the Livewire-based UsersEdit component of Rapyd Admin, a Laravel admin-panel scaffolding package. In affected builds the component collected the list of roles to apply from the browser and persisted them verbatim: version 9.19.0's UsersEdit populated available_roles directly from Role::query()->pluck('name','id') and then synced whatever the request carried, so the only gate was a coarse 'edit users' permission check rather than a check on which roles the caller was entitled to assign. Because the component operated on a user ID supplied by the client, a caller holding a delegated role such as 'operator' could post the numeric ID of the 'admin' (or super-admin) role against their own account and have it written through. The upstream fix commit acd6ee85f9e5ccec67199673b039c605d161406a replaces the browser-derived list with a server-computed assignableRoles() method: a non-super-admin never sees or submits roles listed in rapyd.auth.super_admin_roles, cannot edit a super administrator (which would have allowed a password reset), and cannot add any role to itself; the dead $unchangable property was also removed. The same 9.19.0 security release that backstops this class of bug additionally hardened authority resolution in UsersModalEditEmbed (owner/company scoping), replaced the hard-coded admin@laravel / admin seeder credential with a random one-time password, and escaped stored XSS in x-rpd::select-list and x-rpd::rich-text - context worth noting because pre-9.19.0 deployments may carry several of these weaknesses simultaneously. Vendor/upstream scoring is CVSS 4.0 8.6 (AV:N/AC:L/AT:N/PR:H, high confidentiality/integrity/availability on the vulnerable system, no subsequent-system impact), while the independent assessment maps it to CVSS 3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H; both agree the attack is network-reachable and requires a valid authenticated account, with disagreement only on the privilege level required.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (vulncheck) PRIMARY 8.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.8 HIGH

Network-reachable Livewire endpoint with low complexity; attacker needs a limited operator-level role carrying 'edit users' (PR:L, not admin), and full admin takeover yields C/I/A:H.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
High
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 12, 2026 - 22:03 EUVD
CVE Published
Oct 12, 2026 - 21:17 cve.org
HIGH 8.6

DescriptionCVE.org

Rapyd Admin from 9.0.0 before 9.20.0 contains an improper privilege management vulnerability in the UsersEdit Livewire component that allows users with the edit users permission to assign themselves the admin role. Attackers holding roles such as the shipped operator role can submit the admin role ID for their own account, lifting tenant scoping, bypassing per-record authorization, and enabling impersonation.

Executive ViewAI

Why It Matters

Rapyd Admin, the open-source Laravel administrative scaffolding package, is affected by a privilege-escalation flaw (CVE-2026-109567, CVSS 8.6) that lets a user with routine user-editing permissions grant themselves full administrative rights inside an affected installation. A promoted account can cross tenant boundaries, reach records it should not see, and impersonate other users - including more privileged ones - creating broad confidentiality, integrity and availability exposure for any organization running versions 9.0.0 through 9.19.x in production or multi-tenant environments. Leadership should treat this as a high-priority access-control failure affecting the trust model of the admin layer itself, while noting that no public exploit code and no confirmed active exploitation were identified at time of analysis.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 76% exploitable
Prevalence
Low
niche open-source Laravel admin scaffolding package, limited enterprise footprint
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

43
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +43
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy