Sanluan PublicCMS Improper Authorization Vulnerability in Trade Payment Handler Allowing Unauthorized Payment Cancellations

Vulnerability

A vulnerability exists in Sanluan PublicCMS versions up to 4.0.202506.d, 5.202506.d, and 6.202506.d, specifically within the Trade Payment Handler component. The issue arises in the TradePaymentService.java file, where the 'paid' function improperly authorizes payment cancellation requests. This flaw allows any logged-in user to cancel or refund another user's payment by manipulating the 'paymentId' parameter. The vulnerability can be exploited remotely, and while the attack's complexity is high, a public exploit is available.

Impact

Exploitation of this vulnerability allows for unauthorized cancellation of trade payments, potentially leading to financial discrepancies and abuse of the payment processing system.

Reproduction

To reproduce this vulnerability, log into the application as a user. Create a payment to obtain a 'paymentId'. Then, log in as a different user and extract the '_csrf' token from the cookie. With this token and the 'paymentId' of the payment you wish to cancel, send a request to the 'TradePaymentController.cancel' endpoint. The payment will be canceled, despite not being owned by the user.

Remediation

Users are advised to update to the latest version of Sanluan PublicCMS, where this vulnerability has been patched.

Added: Feb 6, 2026, 8:21 AM
Updated: Feb 6, 2026, 3:45 PM

Vulnerability Rating

Custom Algorithm
spread
0.0
impact
0.6
exploitability
6.2
remediation
0.0
relevance
2.8
threat
6.4
urgency
2.9
incentive
0.0

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.