Description
Froxlor 2.0.0 through 2.3.10 is vulnerable to stored cross-site scripting. When a customer (the lowest-privileged authenticated role) uploads an SSL certificate for one of their own domains, the Certificates API add()/update() methods parse it with openssl_x509_parse() and store the issuer organization (issuer['O']) value verbatim without sanitization. Froxlor's table-listing renderer then emits scalar cells through Twig's `raw` filter, disabling HTML auto-escaping, so when an administrator or reseller opens Domains > SSL certificates the attacker-supplied issuer value executes as script in the privileged user's session. This crosses a privilege boundary from customer to admin and can result in full administrator account takeover; because a Froxlor admin controls webserver, DNS, and PHP configuration applied by a cron job running as root, the issue can be further escalated to command execution as root on the managed server. The issue is fixed in Froxlor 2.3.12.
Published: 2026-09-26
Score: 9.3 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Privilege Escalation to Administrator and Root via Stored XSS
Action: Immediate Patch
AI Analysis

Impact

Froxlor versions 2.0.0 through 2.3.10 allow a customer with the lowest authenticated role to upload an SSL certificate. During upload, the Certificate API parses the certificate with openssl_x509_parse() and stores the issuer's organization value without sanitization. When an administrator or reseller later view the SSL certificate list, the stored issuer string is emitted via Twig’s raw filter, disabling HTML escaping. The embedded JavaScript therefore executes in the privileged user's browser session, granting the attacker the privileges of that admin. Because a Froxlor administrator controls the web server, DNS, and PHP configuration applied by a cron job running as root, the attacker can elevate the compromise to arbitrary command execution on the managed server.

Affected Systems

The affected product is the Froxlor web‑hosting administration panel. All releases from version 2.0.0 up to and including 2.3.10 are vulnerable. The issue was fixed in Froxlor 2.3.12.

Risk and Exploitability

The CVSS score of 9.3 reflects a high‑severity vulnerability. No EPSS data is available, and the flaw is not listed in CISA’s KEV catalog. Exploitation requires a legitimate authenticated customer account to upload a malicious certificate and an administrator (or reseller) to view the certificate list. The attack vector is user‑initiated within the application, but the resulting privilege escalation to administrator and potential for root execution make this vulnerability highly consequential.

Generated by OpenCVE AI on September 26, 2026 at 17:21 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to Froxlor 2.3.12 or later to apply the vendor‑supplied fix.
  • If upgrading is not immediately possible, disable or restrict the SSL certificate upload feature for low‑privileged users, or modify the certificate add/update handlers to sanitize and escape the issuer organization string before storage.
  • After applying a patch or mitigation, audit administrator sessions for signs of compromise, review recent logs for suspicious activity, and reset passwords or invalidate sessions as necessary.

Generated by OpenCVE AI on September 26, 2026 at 17:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 27 Sep 2026 00:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Sat, 26 Sep 2026 13:30:00 +0000

Type Values Removed Values Added
Description Froxlor 2.0.0 through 2.3.10 is vulnerable to stored cross-site scripting. When a customer (the lowest-privileged authenticated role) uploads an SSL certificate for one of their own domains, the Certificates API add()/update() methods parse it with openssl_x509_parse() and store the issuer organization (issuer['O']) value verbatim without sanitization. Froxlor's table-listing renderer then emits scalar cells through Twig's `raw` filter, disabling HTML auto-escaping, so when an administrator or reseller opens Domains > SSL certificates the attacker-supplied issuer value executes as script in the privileged user's session. This crosses a privilege boundary from customer to admin and can result in full administrator account takeover; because a Froxlor admin controls webserver, DNS, and PHP configuration applied by a cron job running as root, the issue can be further escalated to command execution as root on the managed server. The issue is fixed in Froxlor 2.3.12.
Title Froxlor before 2.3.12 Stored XSS via SSL certificate issuer
First Time appeared Froxlor
Froxlor froxlor
Weaknesses CWE-79
CPEs cpe:2.3:a:froxlor:froxlor:*:*:*:*:*:*:*:*
Vendors & Products Froxlor
Froxlor froxlor
References
Metrics cvssV3_1

{'score': 8.7, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N'}

cvssV4_0

{'score': 9.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:N/SC:H/SI:H/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-09-26T23:02:23.814Z

Reserved: 2026-09-26T02:40:56.226Z

Link: CVE-2026-100720

cve-icon Vulnrichment

Updated: 2026-09-26T23:02:20.339Z

cve-icon NVD

Status : Deferred

Published: 2026-09-26T14:16:58.230

Modified: 2026-09-26T23:16:33.660

Link: CVE-2026-100720

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-26T17:30:14Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')