Paymenter has a credit-refund double-spend race condition in service downgrade (doUpgrade) (CVE-2026-71537)
Paymenter payment platform versions prior to 1.5.7 contain a race condition in the service downgrade process that allows authenticated users to trigger multiple refunds for a single downgrade. This occurs because the downgrade logic lacks transactional safety and proper database locking, enabling concurrent requests to bypass concurrency checks and inflate user credit balances. The inflated credits can be used immediately for future payments or service provisioning, causing direct financial loss to the operator.
AI Analysis
Technical Summary
The vulnerability in Paymenter (CVE-2026-71537) arises from the doUpgrade() function in app/Livewire/Services/Upgrade.php, which processes service downgrades. The function performs a proration calculation and refunds user credits without wrapping these operations in a database transaction or applying row-level locks. The concurrency check relies on an unlocked read query to detect pending upgrades, which can be simultaneously passed by multiple concurrent requests. Each request inserts a pending upgrade record and increments the user's credit balance independently, resulting in multiple refunds for a single downgrade event. This race condition enables users to multiply their credit balance fraudulently.
Potential Impact
Authenticated users with active, downgradable services can exploit this race condition to inflate their credit balance by multiple times the legitimate refund amount. The inflated credits are real and spendable within the platform, allowing immediate use to pay invoices or acquire additional services. This leads to direct financial and resource losses for the Paymenter operator. There is no indication of data confidentiality or availability impact.
Mitigation Recommendations
A patch is available for this vulnerability. Operators should upgrade to Paymenter version 1.5.7 or later, where the issue is fixed by implementing proper transactional safety and database locking to serialize concurrent downgrade requests. Until patched, no reliable workaround is described. Users should apply the official fix to prevent exploitation.
Paymenter has a credit-refund double-spend race condition in service downgrade (doUpgrade) (CVE-2026-71537)
Description
Paymenter payment platform versions prior to 1.5.7 contain a race condition in the service downgrade process that allows authenticated users to trigger multiple refunds for a single downgrade. This occurs because the downgrade logic lacks transactional safety and proper database locking, enabling concurrent requests to bypass concurrency checks and inflate user credit balances. The inflated credits can be used immediately for future payments or service provisioning, causing direct financial loss to the operator.
CVSS v3.1
Score 6.5medium
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability in Paymenter (CVE-2026-71537) arises from the doUpgrade() function in app/Livewire/Services/Upgrade.php, which processes service downgrades. The function performs a proration calculation and refunds user credits without wrapping these operations in a database transaction or applying row-level locks. The concurrency check relies on an unlocked read query to detect pending upgrades, which can be simultaneously passed by multiple concurrent requests. Each request inserts a pending upgrade record and increments the user's credit balance independently, resulting in multiple refunds for a single downgrade event. This race condition enables users to multiply their credit balance fraudulently.
Potential Impact
Authenticated users with active, downgradable services can exploit this race condition to inflate their credit balance by multiple times the legitimate refund amount. The inflated credits are real and spendable within the platform, allowing immediate use to pay invoices or acquire additional services. This leads to direct financial and resource losses for the Paymenter operator. There is no indication of data confidentiality or availability impact.
Mitigation Recommendations
A patch is available for this vulnerability. Operators should upgrade to Paymenter version 1.5.7 or later, where the issue is fixed by implementing proper transactional safety and database locking to serialize concurrent downgrade requests. Until patched, no reliable workaround is described. Users should apply the official fix to prevent exploitation.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-5gmm-hjfj-8ff7
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-71537"]
- Ecosystems
- ["Packagist"]
- Database Specific Severity
- MODERATE
- Cvss Version
- 3.1
Threat ID: 6aade53055bf5e2cf5edc2f0
Added to database: 09/19/2026, 01:28:16 UTC
Last enriched: 09/19/2026, 01:56:42 UTC
Last updated: 09/19/2026, 03:12:08 UTC
Views: 5
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.