GHSA-x3vf-mgxj-7785: Lemur Privilege Escalation: Non-admin role members can rewrite role membership via PUT /api/1/roles/<id>
Lemur versions prior to 1.9.2 contain an authorization vulnerability in the PUT /api/1/roles/<id> endpoint. Any user who is a member of a role can modify that role's membership list and rename the role, despite not having admin privileges. This allows non-admin users to add or remove users from roles they belong to, potentially escalating privileges within the system. The DELETE method on the same resource is properly restricted to admins, indicating an oversight in the PUT method's authorization checks.
AI Analysis
Technical Summary
The PUT /api/1/roles/<id> handler in Lemur improperly authorizes role membership modifications by allowing any member of the role to update the role's users and name. The permission check uses RoleMemberPermission(role_id), which grants access if the user is either an admin or a member of the role. This permits non-admin role members to rewrite the membership list and rename the role. The DELETE handler on the same resource correctly requires admin permissions, highlighting an authorization inconsistency. The vulnerability enables lateral privilege escalation within roles by allowing members to add or remove users arbitrarily. Direct promotion to admin via renaming is blocked by unique constraints and strict admin checks.
Potential Impact
An attacker who is a member of a non-admin role can add arbitrary users to that role, granting them the same privileges and access as other role members. They can also remove users from the role, potentially disrupting access for legitimate users. Additionally, the attacker can rename the role, although renaming to 'admin' or equivalent to gain admin privileges is prevented by database constraints and admin checks. This vulnerability can lead to unauthorized privilege escalation and availability impacts within Lemur deployments that delegate authority to non-admin roles.
Mitigation Recommendations
A fix is available by adding an admin permission requirement to the PUT /api/1/roles/<id> handler, mirroring the existing restriction on DELETE. Specifically, the PUT method should be decorated with @admin_permission.require(http_exception=403) to restrict role modifications to admins only. If selective delegation of role management is desired, it should be implemented with a dedicated permission model reflecting role ownership rather than membership, and the role name field should be excluded from delegated updates. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance.
GHSA-x3vf-mgxj-7785: Lemur Privilege Escalation: Non-admin role members can rewrite role membership via PUT /api/1/roles/<id>
Description
Lemur versions prior to 1.9.2 contain an authorization vulnerability in the PUT /api/1/roles/<id> endpoint. Any user who is a member of a role can modify that role's membership list and rename the role, despite not having admin privileges. This allows non-admin users to add or remove users from roles they belong to, potentially escalating privileges within the system. The DELETE method on the same resource is properly restricted to admins, indicating an oversight in the PUT method's authorization checks.
CVSS v3.1
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The PUT /api/1/roles/<id> handler in Lemur improperly authorizes role membership modifications by allowing any member of the role to update the role's users and name. The permission check uses RoleMemberPermission(role_id), which grants access if the user is either an admin or a member of the role. This permits non-admin role members to rewrite the membership list and rename the role. The DELETE handler on the same resource correctly requires admin permissions, highlighting an authorization inconsistency. The vulnerability enables lateral privilege escalation within roles by allowing members to add or remove users arbitrarily. Direct promotion to admin via renaming is blocked by unique constraints and strict admin checks.
Potential Impact
An attacker who is a member of a non-admin role can add arbitrary users to that role, granting them the same privileges and access as other role members. They can also remove users from the role, potentially disrupting access for legitimate users. Additionally, the attacker can rename the role, although renaming to 'admin' or equivalent to gain admin privileges is prevented by database constraints and admin checks. This vulnerability can lead to unauthorized privilege escalation and availability impacts within Lemur deployments that delegate authority to non-admin roles.
Mitigation Recommendations
A fix is available by adding an admin permission requirement to the PUT /api/1/roles/<id> handler, mirroring the existing restriction on DELETE. Specifically, the PUT method should be decorated with @admin_permission.require(http_exception=403) to restrict role modifications to admins only. If selective delegation of role management is desired, it should be implemented with a dedicated permission model reflecting role ownership rather than membership, and the role name field should be excluded from delegated updates. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-x3vf-mgxj-7785
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-55163"]
- Ecosystems
- ["PyPI"]
- Database Specific Severity
- MODERATE
- Cvss Version
- 3.1
Threat ID: 6a3ef7e527e9c79719032b4b
Added to database: 06/26/2026, 22:06:29 UTC
Last enriched: 06/26/2026, 22:44:49 UTC
Last updated: 06/27/2026, 01:10:49 UTC
Views: 3
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.