CVE-2026-43927 Overview
CVE-2026-43927 is a race condition vulnerability in FOSSBilling, a free, open-source billing and client management system. The flaw exists in the cart checkout flow in versions prior to 0.8.0. Authenticated clients can apply a promo code beyond its configured maximum uses by sending concurrent checkout requests. The requests complete before any single request increments the usage counter, allowing unlimited discounted or free orders from a single-use or limited-use promo code. FOSSBilling version 0.8.0 patches the issue. The vulnerability is classified under [CWE-367] (Time-of-Check Time-of-Use race condition).
Critical Impact
Authenticated attackers can abuse single-use promo codes to obtain unlimited discounted or free orders, causing direct financial loss to merchants running affected FOSSBilling instances.
Affected Products
- FOSSBilling versions prior to 0.8.0
- FOSSBilling open-source billing and client management system
- Deployments using promo codes with configured maxuses limits
Discovery Timeline
- 2026-07-06 - CVE-2026-43927 published to NVD
- 2026-07-07 - Last updated in NVD database
Technical Details for CVE-2026-43927
Vulnerability Analysis
The vulnerability is a Time-of-Check Time-of-Use (TOCTOU) race condition in FOSSBilling's cart checkout logic. The application validates whether a promo code has reached its configured maximum uses before applying the discount. However, the check and the subsequent usage counter increment are not performed atomically. An authenticated client can issue multiple concurrent checkout requests referencing the same promo code. Each request reads the used value from the promo table before any other request has committed its increment. All requests then pass the validation and complete successfully, producing orders that individually appear valid.
Root Cause
The root cause is the absence of atomic operations or row-level locking around the promo code usage check and update. The application performs a read-then-write sequence on the promo table's used counter without a transactional guarantee that other requests cannot interleave. FOSSBilling version 0.8.0 addresses this by enforcing serialized access to the usage counter during checkout.
Attack Vector
An authenticated client obtains a valid single-use or limited-use promo code. The attacker then scripts concurrent HTTP checkout requests, each applying the same promo code to a cart. Because the requests execute in parallel, all pass the used < maxuses check simultaneously. Every request completes with the discount applied, producing multiple discounted or free orders from a code intended for restricted redemption. No elevated privileges or user interaction are required beyond a standard authenticated client session.
See the FOSSBilling GitHub Security Advisory for technical details on the affected checkout flow.
Detection Methods for CVE-2026-43927
Indicators of Compromise
- Entries in the promo table where the used counter exceeds the configured maxuses value.
- Multiple orders created within a short time window referencing the same promo code from a single client account.
- Concurrent HTTP POST requests to the checkout endpoint from the same session or client IP.
- Discounted or zero-value orders inconsistent with promo code redemption limits.
Detection Strategies
- Query the promo table periodically for rows where used > maxuses and flag matching promo codes for review.
- Correlate order records against promo code redemption limits to identify overuse events.
- Inspect web server access logs for bursts of near-simultaneous requests to the cart checkout endpoint from the same authenticated client.
Monitoring Recommendations
- Enable database audit logging for INSERT and UPDATE operations against the promo and orders tables.
- Alert on any promo code redemption event that results in a used value greater than or equal to maxuses.
- Track order creation rate per client account and alert on anomalous bursts during checkout.
How to Mitigate CVE-2026-43927
Immediate Actions Required
- Upgrade FOSSBilling to version 0.8.0 or later, which patches the race condition in the checkout flow.
- Audit the promo table for rows where used exceeds maxuses and identify any orders that abused limited-use codes.
- Manually review and, where appropriate, cancel or reverse orders tied to over-redeemed promo codes.
Patch Information
FOSSBilling version 0.8.0 resolves CVE-2026-43927 by correcting the promo code usage check in the cart checkout flow. Administrators should upgrade to 0.8.0 or later. Refer to the FOSSBilling GitHub Security Advisory GHSA-w898-cx35-25gh for release notes and patch details.
Workarounds
- Disable promo codes entirely until the 0.8.0 upgrade is applied.
- Monitor the promo table for used values exceeding maxuses and manually review affected orders.
- Rate-limit checkout requests per authenticated client at the web server or reverse proxy layer to reduce concurrency windows.
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

