# Ditty – Responsive News Tickers, Sliders, and Lists <= 3.1.71 - Authenticated (Contributor+) Stored Cross-Site Scripting via 'display' Shortcode Attribute and Display Style Settings

- **ID:** WPSEC-2026-2472
- **Plugin:** Ditty – Responsive News Tickers, Sliders, and Lists (`ditty-news-ticker`), https://wordpress.org/plugins/ditty-news-ticker/
- **Affected versions:** all versions before 3.1.72
- **Fixed in:** 3.1.72 (Update to 3.1.72 or later.)
- **Severity:** Medium 6.4 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N)
- **Weakness:** CWE-79
- **Usage among sites WPSec scans:** plugin Medium, affected versions Medium (as of 2026-11-04)
- **Attack surface analysis:** https://attacksurface.wpsec.com/plugin/ditty-news-ticker
- **Fix released:** 2026-11-03
- **Published:** 2026-11-04
- **URL:** https://wpsec.com/vuln/WPSEC-2026-2472/

## Description

The Ditty plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'display' attribute of the ditty shortcode and block and the custom display style settings (typography and color values) in all versions up to, and including, 3.1.71. This is due to insufficient input sanitization combined with the display scripts building style and link elements from these values as jQuery HTML strings and writing stylesheet contents with .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.

## References

- https://wpsec.com/vuln/WPSEC-2026-2472/
- https://plugins.svn.wordpress.org/ditty-news-ticker/tags/3.1.72/
- https://wordpress.org/plugins/ditty-news-ticker/

Source: WPSec, https://wpsec.com/vuln/WPSEC-2026-2472/

License: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Free to use, share and adapt, also commercially, if you credit WPSec and link to this advisory.
