CVE-2026-3513
Received Received - Intake
Stored XSS in TableOn WordPress Plugin via Shortcode Attributes

Publication date: 2026-04-08

Last updated on: 2026-04-08

Assigner: Wordfence

Description
The TableOn – WordPress Posts Table Filterable plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'tableon_button' shortcode in all versions up to and including 1.0.4.4. This is due to insufficient input sanitization and output escaping on user-supplied shortcode attributes such as 'class', 'help_link', 'popup_title', and 'help_title'. The do_shortcode_button() function extracts these attributes without sanitization and passes them to TABLEON_HELPER::draw_html_item(), which concatenates attribute values into HTML using single quotes without escaping (line 29: $item .= " {$key}='{$value}'"). This makes it possible for authenticated attackers, with Contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-04-08
Last Modified
2026-04-08
Generated
2026-05-07
AI Q&A
2026-04-08
EPSS Evaluated
2026-05-05
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
tableon wordpress_posts_table_filterable_plugin to 1.0.4.4 (inc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

The TableOn – WordPress Posts Table Filterable plugin is vulnerable to Stored Cross-Site Scripting (XSS) through its 'tableon_button' shortcode in all versions up to 1.0.4.4.

This vulnerability arises because the plugin does not properly sanitize or escape user-supplied shortcode attributes such as 'class', 'help_link', 'popup_title', and 'help_title'.

Specifically, the function do_shortcode_button() extracts these attributes without sanitization and passes them to TABLEON_HELPER::draw_html_item(), which inserts them into HTML using single quotes without escaping, allowing malicious scripts to be injected.

Authenticated attackers with Contributor-level access or higher can exploit this to inject arbitrary web scripts that execute whenever a user views the affected page.


How can this vulnerability impact me? :

This vulnerability can allow an attacker with Contributor-level access to inject malicious scripts into pages on the WordPress site.

When other users visit these pages, the injected scripts will execute in their browsers, potentially leading to theft of sensitive information, session hijacking, or unauthorized actions performed on behalf of the user.

Because the vulnerability requires authenticated access, it limits exploitation to users who already have some level of trust, but the impact can still be significant, especially on sites with many users or sensitive data.


How can this vulnerability be detected on my network or system? Can you suggest some commands?

Detection of this vulnerability involves identifying the presence of the vulnerable TableOn – WordPress Posts Table Filterable plugin version 1.0.4.4 or earlier on your WordPress site.

Since the vulnerability is a Stored Cross-Site Scripting (XSS) via the 'tableon_button' shortcode attributes, you can scan your WordPress content for usage of this shortcode with suspicious or unexpected attribute values.

Commands to detect the plugin version and potentially malicious shortcode usage include:

  • Use WP-CLI to check installed plugin versions: `wp plugin list | grep tableon`
  • Search WordPress posts or pages for the 'tableon_button' shortcode with suspicious attributes: `wp search-replace '\[tableon_button.*\]' '' --dry-run` or use `grep -r '\[tableon_button' ./wp-content/uploads/`
  • Monitor HTTP requests and responses for injected scripts by inspecting pages that use the shortcode, using tools like Burp Suite or browser developer tools.

What immediate steps should I take to mitigate this vulnerability?

Immediate mitigation steps include:

  • Update the TableOn – WordPress Posts Table Filterable plugin to a version later than 1.0.4.4 where the vulnerability is fixed.
  • If an update is not available, disable or remove the plugin to prevent exploitation.
  • Restrict Contributor-level and higher user permissions to trusted users only, as the vulnerability requires authenticated users with at least Contributor access.
  • Review and sanitize any existing content that uses the 'tableon_button' shortcode to remove potentially malicious scripts.
  • Implement Web Application Firewall (WAF) rules to detect and block attempts to exploit this stored XSS vulnerability.

Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart