Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessRegister or authenticate as low-privilege user
-
DeliveryEnumerate admin write routes from open-source code
-
ExploitSend crafted POST/PATCH to vulnerable store()/update() endpoint
-
ExecutionBypass missing RBAC check in controller
-
PersistElevate own role or modify credits/server ownership
-
ImpactUse new admin privileges for full panel takeover
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The attacker must hold a valid authenticated CtrlPanel session on a vulnerable instance (≤1.1.1) but does not need any admin write permission, the login_as permission, or user interaction; the vulnerability is reachable against default configurations because the missing checks are in the controllers themselves rather than gated by an optional feature. Limiting factors: self-registration must be enabled (or the attacker must otherwise obtain any user-tier account), the instance must be network-reachable to the attacker, and exploitation of the logBackIn() path additionally requires that an admin has an active 'Login as User' impersonation session to interfere with. No specific platform, PHP/Laravel version, or non-default setting is required. |
| Impact | The CVSS 3.1 vector AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N (8.1 High) correctly reflects a network-reachable, low-complexity, low-privilege attack with no user interaction yielding high confidentiality and integrity impact and no availability impact - consistent with full takeover via direct API calls by any logged-in user. There is no EPSS score, KEV listing, or public POC provided in the inputs, so real-world exploitation is currently unproven; however the bug is trivially reachable by anyone with a registered account, which on a public hosting-provider portal is effectively the entire user base, making the practical exploitability ceiling far higher than PR:L alone suggests. The constraint is that an attacker must hold a valid (non-admin) authenticated session, so exposure scales with how open self-registration is on a given deployment. No conflicting signals were identified; the primary unknown is whether any in-the-wild abuse has occurred, since the only references are the GitHub Security Advisory and the 1.2.0 release. |
| Exploit ScenarioDerived | An attacker registers (or already holds) an ordinary CtrlPanel user account, obtains the session cookie or API token from the normal login flow, and issues a direct POST to /admin/users/{id} setting their own role to admin or PATCHes their own credits balance. With no public POC identified, exploitation would currently require an attacker to craft the requests from the controller routes documented in the advisory, but the request shapes are trivial because the form templates are still accessible to admins and the field names are visible in the open-source codebase. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 19, 2026
Privilege escalation in CtrlPanel hosting billing software (versions ≤1.1.1) allows any authenticated low-privilege user to invoke admin write endpoints because store()/update() controller methods omit the RBAC permission checks present on their corresponding form-display methods. Successful exploitation yields effective admin control over API credentials, coupons, vouchers, partner commissions, shop pricing, server ownership, and user accounts (including roles, credits, passwords, and Pterodactyl linkages). No public exploit identified at time of analysis, and the issue is not listed in CISA KEV.
RemediationAI
Vendor-released patch: upgrade to CtrlPanel 1.2.0 or later, available at https://github.com/Ctrlpanel-gg/panel/releases/tag/1.2.0 per advisory GHSA-pxmw-gj52-9p68. Until the upgrade is applied, operators should disable open user self-registration so that only trusted accounts can authenticate (this blocks reachability but breaks the normal customer signup flow), restrict access to the /admin/* API routes at the reverse proxy or WAF to known admin IP ranges (this protects the write endpoints but will also block legitimate admin work from other networks), and audit ActivityLog, Coupon, Voucher, Partner, ShopProduct, User, and Server tables for unauthorized rows or modifications before opening the portal again. Note that route-level proxy blocking is a coarse mitigation: the vulnerable endpoints share URL prefixes with legitimate read endpoints, so verify allow/deny rules carefully to avoid breaking the admin UI.
Affected VersionsENISA
Affected Packages
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
CtrlPanel is a Laravel-based open-source billing and user portal for hosting providers, commonly fronting Pterodactyl game-server panels. The flaw is a classic CWE-284 (Improper Access Control) pattern in which authorization is enforced at the GET/edit/create routes but not on the corresponding POST/PATCH state-changing handlers. Affected controllers explicitly named in the advisory are ApplicationApiController, CouponController, PartnerController, ShopProductController, UsefulLinkController, VoucherController (missing checks on both store() and update()), and ProductController, ServerController, UserController (missing checks on update() and related state-change actions such as change_owner, change_identifier, change_email, change_credits, change_password, change_role, change_ptero, change_serverlimit). ActivityLogController additionally shipped empty stub store()/update() methods that silently accepted requests, and the logBackIn() flow lacked the login_as permission gate, enabling interference with admin impersonation sessions.
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
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Primary rating from Vendor (github) · only source for this CVE.
CVSS VectorVendor: github
Lifecycle Timeline
1DescriptionCVE.org
CtrlPanel is open-source billing software for hosting providers. Versions 1.1.1 and prior contains a broken access control vulnerability where multiple admin controllers enforce permission checks on form display methods but omit equivalent checks on the corresponding write methods, allowing any authenticated user to bypass RBAC via direct POST/PATCH requests. Controllers missing checks on write methods store() and update() include ApplicationApiController (admin.api.write), CouponController (admin.coupons.write), PartnerController (admin.partners.write), ShopProductController (admin.store.write), UsefulLinkController (admin.useful_links.write), and VoucherController (admin.voucher.write); ProductController (admin.products.edit), ServerController (write/change_owner/change_identifier), and UserController (write/change_email/change_credits/change_username/change_password/change_role/change_referral/change_ptero/change_serverlimit) are missing checks on update() only, and ActivityLogController exposed empty stub store()/update() methods that silently accepted any request. An authenticated attacker without admin write privileges can issue API credentials, generate unlimited coupons and vouchers, assign arbitrary partner commission and discount rates, alter shop product pricing and limits, reassign server ownership or identifiers, and modify user accounts including roles, credits, passwords, and linked Pterodactyl IDs to achieve full privilege escalation, as well as abuse logBackIn() without the login_as permission to interfere with admin impersonation sessions. This issue has been fixed in version 1.2.0.
Executive ViewAI
CtrlPanel hosting billing software (versions 1.1.1 and earlier) allows any authenticated user to escalate to administrative privileges. This privilege escalation could enable manipulation of billing data, customer credentials, API keys, and infrastructure assignments, creating direct risk to revenue and customer data security. No public exploit has been identified at this time.
Implement API gateway rules to block privilege escalation patterns; enforce strict application-layer role-based access control; enable comprehensive audit logging of administrative operations; restrict network access to admin endpoints; monitor for anomalous low-privilege user access to admin functions.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.
EUVD-2026-30993
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB