CVE-2025-14461

5.3 MEDIUM

📋 TL;DR

The Xendit Payment plugin for WordPress has an authentication bypass vulnerability that allows unauthenticated attackers to mark WooCommerce orders as paid without actual payment. This affects all WordPress sites using Xendit Payment plugin versions up to 6.0.2. Attackers can exploit this to cause financial loss and inventory depletion.

💻 Affected Systems

Products:
  • Xendit Payment plugin for WordPress
Versions: All versions up to and including 6.0.2
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WooCommerce to be installed and configured with Xendit payment gateway.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete inventory depletion and significant financial loss as attackers mark all orders as paid, shipping products without receiving payment.

🟠

Likely Case

Targeted fraud where attackers mark specific high-value orders as paid to obtain goods without payment.

🟢

If Mitigated

No impact if proper authentication and cryptographic verification are implemented for payment callbacks.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires order ID enumeration (sequential integers) and sending crafted POST requests to the vulnerable endpoint.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 6.0.3 or later

Vendor Advisory: https://plugins.trac.wordpress.org/browser/woo-xendit-virtual-accounts

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Xendit Payment' plugin. 4. Click 'Update Now' if update is available. 5. If no update appears, manually download version 6.0.3+ from WordPress.org and replace plugin files.

🔧 Temporary Workarounds

Block vulnerable endpoint via web server

all

Block access to the vulnerable callback endpoint using web server configuration.

# For Apache: add to .htaccess
RewriteRule ^wc_xendit_callback$ - [F,L]
# For Nginx: add to server block
location ~* ^/wc_xendit_callback$ { return 403; }

Disable Xendit plugin temporarily

linux

Deactivate the vulnerable plugin until patched.

wp plugin deactivate woo-xendit-virtual-accounts

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block POST requests to /wc_xendit_callback endpoint.
  • Monitor and alert on suspicious POST requests to the callback endpoint with order status changes.

🔍 How to Verify

Check if Vulnerable:

Check if plugin version is 6.0.2 or lower in WordPress admin panel or via wp-cli: wp plugin get woo-xendit-virtual-accounts --field=version

Check Version:

wp plugin get woo-xendit-virtual-accounts --field=version

Verify Fix Applied:

Verify plugin version is 6.0.3 or higher and test that callback endpoint now requires proper authentication.

📡 Detection & Monitoring

Log Indicators:

  • POST requests to /wc_xendit_callback endpoint with 'status':'PAID' or 'SETTLED' in JSON body
  • Order status changes from pending to completed without corresponding payment transactions

Network Indicators:

  • Unusual POST requests to callback endpoint from non-Xendit IP addresses
  • Rapid sequence of order status updates

SIEM Query:

source="web_logs" AND uri_path="/wc_xendit_callback" AND http_method="POST" AND (body LIKE "%PAID%" OR body LIKE "%SETTLED%")

🔗 References

📤 Share & Export