Description
Froxlor is open source server administration software. Prior to 2.3.8, the Admins.add and Admins.update endpoints in lib/Froxlor/Api/Commands/Admins.php accept an attacker-controlled ipaddress array and store it as JSON in panel_admins.ip without enforcing numeric element types. When the poisoned account later calls IpsAndPorts.listing, lib/Froxlor/Api/Commands/IpsAndPorts.php decodes the array and concatenates its elements into a SQL IN clause without casting or parameterization; the same unsafe pattern is present in lib/Froxlor/Api/Commands/Domains.php. An authenticated administrator with change_serversettings permission can store a UNION-based payload and trigger it through the poisoned account to retrieve arbitrary database data, including administrator login names and bcrypt password hashes, with potential privilege escalation and broader database impact. This issue is fixed in version 2.3.8.
Published: 2026-08-18
Score: 7.2 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Froxlor accepts an attacker-controlled ipaddress array in the Admins.add and Admins.update API calls and stores the array as JSON without enforcing numeric element types. A poisoned account can later trigger a UNION-based payload when calling IpsAndPorts.listing or Domains commands, which decode the JSON and concatenate its elements into a SQL IN clause without parameterization. This second-order SQL injection allows an authenticated administrator with change_serversettings permission to extract arbitrary database data, including administrator login names and bcrypt password hashes, leading to privilege escalation and broader database compromise.

Affected Systems

The vulnerability affects all Froxlor deployments running any version prior to 2.3.8. The issue was addressed and fixed in the 2.3.8 release. No other vendor or product is listed.

Risk and Exploitability

The CVSS score of 7.2 indicates a medium-to-high severity. EPSS information is not available and the vulnerability is not listed in CISA KEV, suggesting it is not actively exploited at this time. However, because the attack requires authenticated access with change_serversettings permission, it is likely to be exploited by an attacker who has compromised an admin account or gained legitimate administrative access. The lack of external public exploit evidence does not diminish the risk of an insider or credential-leak scenario. The vulnerability is a classic second-order SQL injection (CWE-89) that can enable data exfiltration by leveraging legitimate API operations.

Generated by OpenCVE AI on August 18, 2026 at 21:56 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Froxlor to version 2.3.8 or later to apply the fixed code.
  • Remove or sanitize any ipaddress JSON values from existing admin accounts to eliminate potential payloads.
  • Restrict change_serversettings permissions to trusted administrators and monitor admin account activity for suspicious changes.

Generated by OpenCVE AI on August 18, 2026 at 21:56 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-w27m-rmmf-g5w4 Froxlor: Second-Order SQL Injection via `Admins.add` `ipaddress` Parameter Allows Full Database Exfiltration
History

Tue, 18 Aug 2026 22:00:00 +0000

Type Values Removed Values Added
First Time appeared Froxlor
Froxlor froxlor
Vendors & Products Froxlor
Froxlor froxlor

Tue, 18 Aug 2026 20:30:00 +0000

Type Values Removed Values Added
Description Froxlor is open source server administration software. Prior to 2.3.8, the Admins.add and Admins.update endpoints in lib/Froxlor/Api/Commands/Admins.php accept an attacker-controlled ipaddress array and store it as JSON in panel_admins.ip without enforcing numeric element types. When the poisoned account later calls IpsAndPorts.listing, lib/Froxlor/Api/Commands/IpsAndPorts.php decodes the array and concatenates its elements into a SQL IN clause without casting or parameterization; the same unsafe pattern is present in lib/Froxlor/Api/Commands/Domains.php. An authenticated administrator with change_serversettings permission can store a UNION-based payload and trigger it through the poisoned account to retrieve arbitrary database data, including administrator login names and bcrypt password hashes, with potential privilege escalation and broader database impact. This issue is fixed in version 2.3.8.
Title Froxlor: Second-Order SQL Injection via `Admins.add` `ipaddress` Parameter Allows Full Database Exfiltration
Weaknesses CWE-89
References
Metrics cvssV3_1

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


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-18T20:15:31.866Z

Reserved: 2026-06-12T19:23:22.317Z

Link: CVE-2026-54348

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-18T21:16:36.170

Modified: 2026-08-18T21:16:36.170

Link: CVE-2026-54348

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-18T22:00:14Z

Weaknesses
  • CWE-89

    Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')