SureDash drawer position attribute permits Contributor stored XSS
SureDash through 1.10.3 stores the Contributor-controlled draweropenverposition value inside block-delimiter JSON, which wp_kses_post does not neutralize. During rendering, the plugin inserts that value into a style attribute without esc_attr(), so a quote can escape the attribute and introduce an HTML event handler. The payload executes for visitors to the affected block or shortcode. The exact reporter payload is not disclosed.
- Component
- SureDash – Community, Courses & Member Dashboard
- Plugin slug
suredash- Affected
- <= 1.10.3
- Safe version
- See mitigation notes
- Published
- Aug 16, 2026
This CVE was published Aug 16, 2026 and is one of 12 known issues for this plugin.
Update, patch or deactivate.
This archive could not verify a fixed version from the official author release notes reviewed on 2026-10-13. Disable the affected feature or component where practical until remediation for the deployed configuration is established. restrict Contributors or disable the affected drawer block, review content, and invalidate privileged sessions if malicious output was viewed. Official author release notes: https://wordpress.org/plugins/suredash/.
No confirmed safe version is listed. Consider a vendor-supported patch or temporarily restricting the affected functionality while you assess the risk.
Deactivate only when warranted by your risk profile, or when advised by your hosting provider in the limited circumstances where the vulnerability cannot otherwise be mitigated. If you’re unsure which action is appropriate, contact Fused or your hosting provider for guidance.
Technical description
The SureDash – Community, Courses & Member Dashboard plugin for WordPress is vulnerable to Stored Cross-Site Scripting via 'draweropenverposition' Block/Shortcode Attribute in all versions up to, and including, 1.10.3 due to insufficient input sanitization and output escaping. 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. The injected payload is stored inside the block-delimiter HTML comment's JSON, which wp_kses_post does not neutralize on save, and is only interpolated into the rendered style attribute at display time without esc_attr() escaping, allowing a double-quote to break out of the attribute and introduce arbitrary HTML event handlers.
CVE / CNA vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N