CVE-2025-1008

6.4 MEDIUM

📋 TL;DR

This stored XSS vulnerability in the Recently Purchased Products For Woo WordPress plugin allows authenticated attackers with Contributor access or higher to inject malicious scripts that execute when users view affected pages. The vulnerability affects all versions up to 1.1.3 due to insufficient input sanitization of the 'view' parameter. WordPress sites using this plugin are at risk.

💻 Affected Systems

Products:
  • Recently Purchased Products For Woo WordPress plugin
Versions: All versions up to and including 1.1.3
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress with WooCommerce and the vulnerable plugin installed. Contributor-level access or higher is needed for exploitation.

⚠️ 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

Attackers could steal admin credentials, redirect users to malicious sites, deface websites, or perform actions on behalf of authenticated users, potentially leading to complete site compromise.

🟠

Likely Case

Attackers with contributor accounts inject malicious scripts to steal session cookies or user data from visitors viewing affected pages, potentially compromising user accounts.

🟢

If Mitigated

With proper input validation and output escaping, the malicious scripts would be neutralized, preventing execution and limiting impact to data integrity issues only.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated access but is technically simple once an attacker has contributor privileges.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.1.4 or later

Vendor Advisory: https://wordpress.org/plugins/recently-purchased-products-for-woo/#developers

Restart Required: No

Instructions:

1. Log into WordPress admin panel
2. Navigate to Plugins → Installed Plugins
3. Find 'Recently Purchased Products For Woo'
4. Click 'Update Now' if update available
5. If no update available, deactivate and delete plugin
6. Install latest version from WordPress repository

🔧 Temporary Workarounds

Disable vulnerable plugin

all

Temporarily deactivate the plugin to prevent exploitation while awaiting patch

wp plugin deactivate recently-purchased-products-for-woo

Restrict user roles

all

Limit contributor-level access to trusted users only

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block XSS payloads in 'view' parameter
  • Remove contributor access from untrusted users and audit existing contributor accounts

🔍 How to Verify

Check if Vulnerable:

Check plugin version in WordPress admin under Plugins → Installed Plugins. If version is 1.1.3 or earlier, you are vulnerable.

Check Version:

wp plugin get recently-purchased-products-for-woo --field=version

Verify Fix Applied:

After updating, verify plugin version shows 1.1.4 or later. Test that the 'view' parameter properly sanitizes input.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to plugin endpoints with script tags in parameters
  • Multiple failed login attempts followed by successful contributor login

Network Indicators:

  • Outbound connections to suspicious domains from your WordPress server
  • Unexpected JavaScript execution on product pages

SIEM Query:

source="wordpress.log" AND ("recently-purchased-products" OR "rppw") AND ("<script>" OR "javascript:" OR "onerror=" OR "onload=")

🔗 References

📤 Share & Export