CVE-2025-60244

7.1 HIGH

📋 TL;DR

This Cross-Site Scripting (XSS) vulnerability in the WordPress TableOn plugin allows attackers to inject malicious scripts into web pages. It affects all WordPress sites using TableOn plugin versions 1.0.4.2 and earlier. Attackers can execute arbitrary JavaScript in victims' browsers when they view compromised pages.

💻 Affected Systems

Products:
  • WordPress TableOn (posts-table-filterable) plugin
Versions: All versions up to and including 1.0.4.2
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with TableOn plugin active. Vulnerability exists in the plugin's HTML tag handling.

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

🟠

Likely Case

Attackers inject malicious scripts to steal user session cookies or credentials, potentially leading to account compromise.

🟢

If Mitigated

With proper Content Security Policy (CSP) headers and input validation, impact is limited to script execution within the vulnerable page context.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

XSS vulnerabilities are commonly exploited. The PatchStack reference provides technical details about the vulnerability.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version after 1.0.4.2

Vendor Advisory: https://patchstack.com/database/Wordpress/Plugin/posts-table-filterable/vulnerability/wordpress-tableon-plugin-1-0-4-2-content-injection-vulnerability?_s_id=cve

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'TableOn' plugin. 4. Click 'Update Now' if update available. 5. If no update available, deactivate and remove plugin until patched version is released.

🔧 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 theme functions.php: header("Content-Security-Policy: default-src 'self'; script-src 'self'");

Disable TableOn Plugin

all

Temporarily disable vulnerable plugin until patched

wp plugin deactivate posts-table-filterable
Or via WordPress admin: Plugins → Installed Plugins → TableOn → Deactivate

🧯 If You Can't Patch

  • Implement Web Application Firewall (WAF) rules to block XSS payloads
  • Restrict plugin access to trusted users only using WordPress role capabilities

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel → Plugins → Installed Plugins → TableOn version. If version is 1.0.4.2 or lower, you are vulnerable.

Check Version:

wp plugin get posts-table-filterable --field=version

Verify Fix Applied:

After update, verify TableOn plugin version is higher than 1.0.4.2 in WordPress admin plugins page.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests containing script tags to TableOn endpoints
  • Multiple failed XSS attempts in web server logs

Network Indicators:

  • HTTP requests with suspicious script payloads in parameters
  • Unexpected JavaScript execution from TableOn pages

SIEM Query:

source="web_server_logs" AND (uri_path="*tableon*" OR uri_path="*posts-table-filterable*") AND (http_method="POST" OR http_method="GET") AND (message="*<script>*" OR message="*javascript:*" OR message="*onload=*" OR message="*onerror=*")

🔗 References

📤 Share & Export