CVE-2026-43928: FOSSBilling: Payment amount not validated in PayPalEmail adapter allows invoice underpayment
FOSSBilling is a free, open-source billing and client management system. Prior to version 0.8.0, the PayPalEmail payment adapter accepts PayPal IPN callbacks and credits the IPN-supplied amount (mcgross) to the client's balance without validating it against the invoice total. Combined with a $0.05 floating-point epsilon tolerance in the invoice credit-payment logic, this allows a client to underpay an invoice by up to $0.04 and still have it marked as fully paid. Version 0.8.0 patches the issue. There is no effective workaround without modifying the source code. Merchants using the PayPalEmail adapter should monitor IPN transactions for amounts that do not match their corresponding invoice totals, and manually review and refund suspicious payments.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
FOSSBilling PayPalEmail payment adapterto a version that resolves this vulnerability.Fixed in 0.8.0 - Compensating control
For merchants using the FOSSBilling PayPalEmail adapter prior to version 0.8.0, monitor PayPal IPN (Instant Payment Notification) transactions for cases where the IPN amount (mc_gross) does not match the corresponding invoice total, and manually review and refund any suspicious underpayments.
Event History
Frequently Asked Questions
What is the severity of CVE-2026-43928?
CVE-2026-43928 has a risk score of 45, indicating a moderate severity level.
How do I fix CVE-2026-43928?
To fix CVE-2026-43928, upgrade FOSSBilling to version 0.8.0 or later, which includes a proper validation for the payment amount.
What systems are affected by CVE-2026-43928?
CVE-2026-43928 affects FOSSBilling prior to version 0.8.0 that uses the PayPalEmail payment adapter.
What issue does CVE-2026-43928 cause?
CVE-2026-43928 allows for invoice underpayment due to the lack of validation for the payment amount in the PayPalEmail adapter.
How can I identify if I have CVE-2026-43928?
You can identify CVE-2026-43928 by checking if you are using a version of FOSSBilling older than 0.8.0.