CVE-2025-0511

7.2 HIGH

📋 TL;DR

The Welcart e-Commerce plugin for WordPress has a stored cross-site scripting (XSS) vulnerability in the 'name' parameter that allows unauthenticated attackers to inject malicious scripts. These scripts execute automatically when users visit compromised pages, potentially stealing credentials or hijacking sessions. All WordPress sites using Welcart versions up to 2.11.9 are affected.

💻 Affected Systems

Products:
  • Welcart e-Commerce plugin for WordPress
Versions: All versions up to and including 2.11.9
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: All default configurations of the plugin are vulnerable; no special settings are required for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal administrator credentials, hijack user sessions, deface websites, or redirect users to malicious sites, potentially leading to complete site compromise and data theft.

🟠

Likely Case

Attackers inject malicious scripts to steal user session cookies or credentials, enabling account takeover and unauthorized access to sensitive e-commerce data.

🟢

If Mitigated

With proper input validation and output escaping, the vulnerability is prevented, though legacy vulnerable versions remain at risk until patched.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

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

Exploitation is straightforward as it requires no authentication and involves simple script injection via the 'name' parameter.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version 2.11.10 or later

Vendor Advisory: https://wordpress.org/plugins/usc-e-shop/#developers

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Welcart e-Commerce' and click 'Update Now'. 4. Verify the plugin version is 2.11.10 or higher.

🔧 Temporary Workarounds

Input Sanitization via WordPress Hooks

WordPress

Add custom code to sanitize the 'name' parameter before processing.

Add to theme's functions.php or a custom plugin: add_filter('preprocess_welcart_name', 'sanitize_text_field');

🧯 If You Can't Patch

  • Temporarily disable the Welcart plugin if e-commerce functionality is not critical, but note this will break online store operations.
  • Implement a web application firewall (WAF) rule to block malicious input patterns targeting the 'name' parameter.

🔍 How to Verify

Check if Vulnerable:

Check the plugin version in WordPress admin under Plugins > Installed Plugins; if Welcart version is 2.11.9 or lower, it is vulnerable.

Check Version:

In WordPress, run: wp plugin list --name='Welcart e-Commerce' --field=version

Verify Fix Applied:

After updating, confirm the plugin version is 2.11.10 or higher in the same location and test that script injection via the 'name' parameter is blocked.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to Welcart endpoints with script tags in 'name' parameter
  • Increased error logs related to input validation failures

Network Indicators:

  • HTTP requests containing malicious script payloads in the 'name' parameter to Welcart plugin URLs

SIEM Query:

source="wordpress.log" AND "name=<script>" AND "usc-e-shop"

🔗 References

📤 Share & Export