Description
The WP Random Button plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'cat', 'nocat', and 'text' shortcode attributes of the 'wp_random_button' shortcode in all versions up to, and including, 1.0. This is due to insufficient input sanitization and output escaping on user-supplied shortcode attributes. Specifically, the random_button_html() function directly concatenates the 'cat' and 'nocat' parameters into HTML data-attributes without esc_attr(), and the 'text' parameter into HTML content without esc_html(). 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.
Problem types
CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Product status
Any version
Timeline
| 2026-03-20: | Disclosed |
Credits
zakaria
References
www.wordfence.com/...-5a05-4867-abd8-fb07c84a49b0?source=cve
plugins.trac.wordpress.org/...ton/trunk/wp-random-button.php
plugins.trac.wordpress.org/.../tags/1.0/wp-random-button.php
plugins.trac.wordpress.org/...ton/trunk/wp-random-button.php
plugins.trac.wordpress.org/.../tags/1.0/wp-random-button.php