CVE-2026-53646
Published:July 06, 2026
Updated:August 04, 2026
FOSSBilling is a free, open-source billing and client management system. In versions 0.5.6 through 0.7.2, when a "ClientPasswordReset" record already exists for a client (from a previous unexpired reset request), subsequent calls to the "reset_password" guest API endpoint reuse the existing token instead of generating a new one. The 15-minute validity window is anchored to the first request's "created_at" timestamp, not the time of the most recent email. An attacker who obtained the original reset link remains able to use it even after the victim requests a new reset, because the original token is never invalidated or rotated. Version 0.8.0 patches the issue. Some workarounds are available. Configure a reverse proxy (e.g., Nginx, Apache, Cloudflare) to apply per-IP rate limiting to the "/client/reset-password" endpoint to minimize the window of opportunity, and/or manually clear expired "client_password_reset" records from the database after a client reports a suspected compromise.
Affected Packages
https://github.com/FOSSBilling/FOSSBilling.git (GITHUB):
Affected version(s) >=0.5.6 <0.8.0Fix Suggestion:
Update to version 0.8.0Related Resources (3)
Do you need more information?
Contact UsCVSS v4
Base Score:
7.7
Attack Vector
NETWORK
Attack Complexity
HIGH
Attack Requirements
PRESENT
Privileges Required
NONE
User Interaction
PASSIVE
Vulnerable System Confidentiality
HIGH
Vulnerable System Integrity
HIGH
Vulnerable System Availability
HIGH
Subsequent System Confidentiality
NONE
Subsequent System Integrity
NONE
Subsequent System Availability
NONE
CVSS v3
Base Score:
7.5
Attack Vector
NETWORK
Attack Complexity
HIGH
Privileges Required
NONE
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH
Weakness Type (CWE)
Weak Password Recovery Mechanism for Forgotten Password
EPSS
Base Score:
0.21