Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-53645

CVE-2026-53645: FOSSBilling Privilege Escalation Flaw

CVE-2026-53645 is a privilege escalation vulnerability in FOSSBilling that allows low-privileged staff to gain unauthorized permissions through the admin API. This post covers technical details, affected versions, and mitigation.

Published:

CVE-2026-53645 Overview

CVE-2026-53645 is a privilege escalation vulnerability in FOSSBilling, a free, open-source billing and client management system. Versions prior to 0.8.0 allow a low-privileged staff account to grant arbitrary module permissions to itself through the admin API. A staff user holding only staff.create_and_edit_staff can call /api/admin/staff/permissions_update targeting their own account and write any permission structure. The flaw bypasses the intended role-based access control boundary, resulting in persistent privilege escalation. Version 0.8.0 patches the issue. The weakness is categorized under [CWE-269: Improper Privilege Management].

Critical Impact

A low-privileged authenticated staff user can escalate to full administrative control over the FOSSBilling instance by rewriting their own permission structure through the admin API.

Affected Products

  • FOSSBilling versions prior to 0.8.0
  • FOSSBilling billing and client management system deployments exposing the admin API
  • Any FOSSBilling instance with staff accounts holding the staff.create_and_edit_staff permission

Discovery Timeline

  • 2026-07-06 - CVE-2026-53645 published to the National Vulnerability Database (NVD)
  • 2026-07-07 - Last updated in NVD database

Technical Details for CVE-2026-53645

Vulnerability Analysis

The vulnerability resides in the FOSSBilling admin API endpoint /api/admin/staff/permissions_update. This endpoint updates the permission structure associated with a staff account. The endpoint checks whether the caller holds the staff.create_and_edit_staff capability but does not enforce boundaries on the permission payload the caller is allowed to assign. An authenticated staff user with that single capability can therefore target their own account identifier and write an arbitrary permissions object. The result is persistent vertical privilege escalation to full administrative control.

Root Cause

The root cause is improper privilege management [CWE-269] in the permission update flow. The endpoint conflates "authority to edit staff" with "authority to grant any permission," and it does not restrict the caller from modifying their own account or from assigning permissions beyond those they already hold. Role-based access control (RBAC) checks are performed at the API gateway level but are not re-validated against the contents of the permission payload.

Attack Vector

The attack is network-based and requires low privileges but no user interaction. An attacker who compromises or is granted a limited staff account with staff.create_and_edit_staff sends a crafted POST request to /api/admin/staff/permissions_update, supplying their own staff identifier and a permissions object granting full administrative capabilities. Once the API returns success, the attacker's session gains the newly assigned rights. The escalation is persistent because the permissions are written to the backing datastore.

No verified public exploit code is available at the time of publication. Refer to the FOSSBilling GitHub Security Advisory for authoritative technical details.

Detection Methods for CVE-2026-53645

Indicators of Compromise

  • HTTP requests to /api/admin/staff/permissions_update originating from staff accounts that historically only performed staff-editing tasks.
  • Unexpected changes to staff permission records where a staff account grants itself permissions outside its assigned role.
  • Newly elevated staff accounts that begin accessing administrative modules such as billing configuration, invoices, or system settings shortly after a permissions update call.

Detection Strategies

  • Audit FOSSBilling application logs for POST requests to /api/admin/staff/permissions_update and correlate the staff_id parameter against the authenticated caller's identity.
  • Alert when a staff account modifies its own permission record, which should be a rare administrative action.
  • Compare current staff permission structures against a known-good baseline to identify unauthorized additions.

Monitoring Recommendations

  • Enable verbose audit logging on the FOSSBilling admin API and forward logs to a centralized SIEM for retention and correlation.
  • Monitor web server access logs for anomalous request patterns to /api/admin/staff/* endpoints, especially from non-administrative accounts.
  • Track database-level changes to the staff permissions table with row-level auditing where supported.

How to Mitigate CVE-2026-53645

Immediate Actions Required

  • Upgrade FOSSBilling to version 0.8.0 or later, which contains the official patch for CVE-2026-53645.
  • Review all existing staff accounts and revoke staff.create_and_edit_staff from any account that does not strictly require it.
  • Audit historical permission changes to identify any staff accounts that may have escalated privileges prior to patching.

Patch Information

FOSSBilling version 0.8.0 remediates the vulnerability by enforcing proper authorization checks on the /api/admin/staff/permissions_update endpoint. Administrators should upgrade following the guidance in the FOSSBilling GitHub Security Advisory GHSA-4hf7-xxxw-64rm.

Workarounds

  • Restrict the staff.create_and_edit_staff permission to only highly trusted staff members until the upgrade to 0.8.0 is complete.
  • Deploy a reverse proxy or web application firewall (WAF) rule to restrict access to /api/admin/staff/permissions_update to specific trusted source addresses or administrative roles.
  • Reset and review the permission structure of any staff account suspected of having invoked the vulnerable endpoint.
bash
# Example NGINX reverse proxy rule restricting access to the vulnerable endpoint
location = /api/admin/staff/permissions_update {
    allow 10.0.0.0/24;   # Trusted admin network
    deny all;
    proxy_pass http://fossbilling_backend;
}

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.