CVE-2025-58651

6.5 MEDIUM

📋 TL;DR

This DOM-based cross-site scripting (XSS) vulnerability in PlayerJS WordPress plugin allows attackers to inject malicious scripts into web pages viewed by users. The vulnerability affects all versions up to 2.24 of the PlayerJS plugin, potentially compromising user sessions and data.

💻 Affected Systems

Products:
  • PlayerJS WordPress Plugin
Versions: All versions up to and including 2.24
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: WordPress sites using vulnerable PlayerJS plugin versions are affected regardless of configuration.

⚠️ 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 user session cookies, redirect users to malicious sites, perform actions on behalf of authenticated users, or deface websites.

🟠

Likely Case

Session hijacking, credential theft, or malicious content injection affecting users who visit compromised pages.

🟢

If Mitigated

Limited impact with proper content security policies, input validation, and output encoding in place.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires user interaction with malicious input, but no authentication is needed for the XSS payload to execute.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version after 2.24

Vendor Advisory: https://patchstack.com/database/wordpress/plugin/playerjs/vulnerability/wordpress-playerjs-plugin-2-24-cross-site-scripting-xss-vulnerability?_s_id=cve

Restart Required: No

Instructions:

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

🔧 Temporary Workarounds

Implement Content Security Policy

all

Add CSP headers to restrict script execution sources

Add to .htaccess: Header set Content-Security-Policy "default-src 'self'; script-src 'self'"
Or add to WordPress functions.php: header("Content-Security-Policy: default-src 'self'; script-src 'self'");

Input Sanitization Filter

WordPress

Add custom input validation for PlayerJS parameters

Add to WordPress theme functions.php: add_filter('playerjs_parameters', 'sanitize_playerjs_input'); function sanitize_playerjs_input($params) { return array_map('esc_js', $params); }

🧯 If You Can't Patch

  • Disable or remove PlayerJS plugin immediately
  • Implement web application firewall with XSS protection rules

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Installed Plugins for PlayerJS version 2.24 or earlier

Check Version:

wp plugin list --name=playerjs --field=version (if WP-CLI installed)

Verify Fix Applied:

Verify PlayerJS plugin version is greater than 2.24 in WordPress admin panel

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST/GET parameters containing script tags or JavaScript in PlayerJS-related requests
  • Multiple failed attempts to access PlayerJS endpoints with malicious payloads

Network Indicators:

  • HTTP requests containing <script> tags or javascript: protocols in PlayerJS parameters
  • Unusual outbound connections from user browsers after visiting PlayerJS pages

SIEM Query:

source="web_server_logs" AND (uri_path="*playerjs*" AND (request_parameters="*<script>*" OR request_parameters="*javascript:*"))

🔗 References

📤 Share & Export