Stored cross-site scripting in Themify Builder custom fonts
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Cross-site scripting
- Confidentiality · integrity · availability
- Low · Low · None
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-79.
Summary
The Themify Builder plugin for WordPress is affected up to and including 7.8.4. The variations repeater field of Custom Font posts stores input without sufficient sanitization, and the Custom Fonts admin listing prints it without output escaping (CWE-79). An authenticated attacker with contributor-level access or higher can inject arbitrary web scripts that execute when a user opens that listing.
Written with Claude Haiku 5.5 from the sources below · 2026-10-31
Description from the CNA
The Themify Builder plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'variations' repeater field of Custom Font (tb_cf) posts in versions up to, and including, 7.8.4. This is due to insufficient input sanitization and output escaping on the variations post meta: Themify_Metabox::_save_meta() only passes the value through wp_kses_data() when the field type is 'textbox' or 'textarea', so the 'repeater' field writes attacker-controlled sub-fields (style, woff/woff2/ttf/svg/eot URLs) to update_post_meta() verbatim, and Themify_Custom_Fonts::render_columns() later echoes those values unescaped inside a <style> block on the Custom Fonts admin listing. 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 (specifically, the Custom Fonts admin listing).
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
The sources list no fixed version for Themify Builder.
Written with Claude Haiku 5.5 from the sources below · 2026-10-31
Timeline
- 2026-10-30 Threatist record created from CVE-2026-115869
- 2026-10-30 CISA SSVC decision points changed
- 2026-10-30 Priority changed: MEDIUM → LOW
- 2026-10-30 Alias added: GHSA-2m93-9jp5-xhh2
References
Other 5
- https://www.wordfence.com/threat-intel/vulnerabilities/id/cf80f304-f79d-4863-b57a-d273daa5fe7f?source=cve
- https://plugins.trac.wordpress.org/browser/themify-builder/tags/7.8.4/themify/class-themify-custom-fonts.php#L287
- https://plugins.trac.wordpress.org/browser/themify-builder/tags/7.8.4/themify/themify-metabox/includes/themify-metabox-core.php#L208
- https://plugins.trac.wordpress.org/browser/themify-builder/tags/7.8.4/themify/themify-metabox/includes/themify-metabox-core.php#L230
- https://plugins.trac.wordpress.org/changeset?reponame=&old=3774070%40themify-builder&new=3774070%40themify-builder
More themifyme vulnerabilities
- TI-2023-24789 WordPress Themify Ultra theme <= 7.3.5 - Authenticated Arbitrary Settings Change vulnerability CVSS 3.1HIGH 8.8
- TI-2024-02839 Themify Builder < 7.5.8 - Open Redirect CVSS 3.1MEDIUM 6.1
- TI-2023-02482 Conditional Menus < 1.2.1 - Reflected XSS CVSS 3.1MEDIUM 6.1
- TI-2023-00346 Themify Portfolio Post < 1.2.2 - Contributor+ Stored XSS CVSS 3.1MEDIUM 5.4
- TI-2022-04383 Themify Shortcodes < 2.0.8 - Contributor+ Stored XSS via Shortcode CVSS 3.1MEDIUM 5.4
- TI-2022-04079 Themify Portfolio Post < 1.2.1 - Contributor+ Stored XSS CVSS 3.1MEDIUM 5.4
Sources
- CVE-2026-115869 · CVE Program
- CVE-2026-115869 · NVD
- FIRST EPSS
- GHSA-2m93-9jp5-xhh2 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences