CVE-2026-34246 CtrlPanel: Stored XSS in Admin Role Management via Unescaped DataTable HTML Output

Medium 4.8 Published Updated

Stored XSS in CtrlPanel admin role management allows attackers to hijack sessions and escalate privileges via unescaped HTML output.

Exploited in the wild
Not known
Login needed
An administrator
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
None listed

What is CVE-2026-34246?

CVE-2026-34246 is a medium-severity cross-site scripting vulnerability in Ctrlpanel-gg panel, published on 19 May 2026. An attacker needs administrator access to exploit it, and only if a user opens a file or follows a link.

Official description

CtrlPanel is open-source billing software for hosting providers. Versions 1.1.1 and prior contain a Stored Cross-Site Scripting (XSS) vulnerability exists in the admin role management interface. In app/Http/Controllers/Admin/RoleController.php, the datatable() method interpolates $role->name and $role->color directly into a <span> element's HTML and style attribute without sanitization, and the chained .rawColumns(['actions', 'name']) call instructs DataTables to render the name column as raw HTML, bypassing automatic output escaping. An admin with role creation or edit permissions can inject a payload such as <img src=x onerror="alert('XSS_POC')"> into the name or color fields, which is persisted to the database and executes in the browser of every admin who loads the /admin/roles page. This enables session hijacking via cookie theft, credential harvesting through fake login prompts or keyloggers, lateral privilege escalation by performing admin actions on behalf of victims, and a persistent backdoor that re-executes on every page load until the malicious role record is removed. This issue has been resolved in version 1.2.0.

Weakness: CWE-80, CWE-116

Which versions are affected by CVE-2026-34246?

How do I fix CVE-2026-34246?

No fix has been published for CVE-2026-34246 yet. Limit exposure of the affected software until one is available.

Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.

Is CVE-2026-34246 being exploited?

There is no known exploitation of CVE-2026-34246 in the wild and no public exploit code.

Sources

Also known as GHSA-wpqj-xwhq-2mmh.

Is CVE-2026-34246 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free