CVE-2026-53646
NoneCVSS
—
EPSS
—
Published
Jul 6, 2026
CISA due date
—
The record
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
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-81905 Concrete CMS below 9.5.3 stores user validation hashes for multiple purposes… CWE-640
- CVE-2026-71625 An issue in slimkit plus ThinkSNS+ v.2.4 allows a remote attacker to escalate privileges… CWE-640
- CVE-2026-82487 A vulnerability was determined in Beetel 450TC3 01.00.00_01. CWE-640
- CVE-2026-19632 The TranslatePress – Translate Multilingual sites with AI Translation plugin for… CWE-640
- CVE-2026-18963 A flaw was found in the reset-credentials flow of the keycloak-services component, which… CWE-640
- CVE-2026-15689 Dancer2::Plugin::Auth::Extensible versions through 0.713 for Perl allow password reset… CWE-640
- CVE-2026-12949 The Wishlist Member plugin for WordPress is vulnerable to Account Takeover via… CWE-640
- CVE-2026-72856 Budibase versions before 3.40.0 contain an authorization/authentication bypass in the PUT… CWE-640