What the vulnerability does
01Description
The Twittee Text Tweet plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'id' shortcode attribute in all versions up to and including 1.0.8. This is due to insufficient input sanitization and output escaping on user-supplied shortcode attributes. The ttt_twittee_tweeter() function uses extract() to pull shortcode attributes into local variables and then directly concatenates them into HTML output without any escaping. Specifically, the $id parameter is inserted into an HTML id attribute context without esc_attr(), allowing an attacker to break out of the attribute and inject arbitrary HTML event handlers. Additionally, the $tweet, $content, $balloon, and $theme attributes are similarly injected into inline JavaScript without escaping (lines 87, 93, 101, 117). 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.
Explanation of Vulnerability in Simple Terms
02Summary
Twittee Text Tweet versions 1.0.8 and earlier contain a cross-site scripting vulnerability that allows authenticated users to inject malicious scripts affecting other users. The vulnerability has a changed scope, meaning the impact extends beyond the vulnerable component itself. An attacker with low-level account access can craft malicious input that executes in other users' browsers, potentially compromising their sessions or data.
What an attacker can do
03Attacker Capabilities
Inject malicious scripts that execute in other users' browsers, potentially stealing session data or performing actions on their behalf.
Potential impact on your site
04Site Impact
Authenticated users can inject scripts affecting other site visitors; may lead to account compromise or unauthorized actions.
Conditions required to exploit
05Prerequisites
Attacker must have a low-privilege account on the site; no user interaction required from the victim.
Key dates
06Disclosure timeline
April 22, 2026
CVE published
April 22, 2026
Record updated