PT-2026-31578 · Rustaurius · Ultimate Faq Accordion Plugin
Athiwat Tiprasaharn
+1
·
Published
2026-04-09
·
Updated
2026-04-09
·
CVE-2026-4336
CVSS v3.1
6.4
Medium
| AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N |
The Ultimate FAQ Accordion plugin for WordPress is vulnerable to Stored Cross-Site Scripting via FAQ content in all versions up to, and including, 2.4.7. This is due to the plugin calling html entity decode() on post content during rendering in the set display variables() function (View.FAQ.class.php, line 746), which converts HTML entity-encoded payloads back into executable HTML, combined with insufficient output escaping in the faq-answer.php template where the decoded content is echoed without wp kses post() or any other sanitization. The ufaq custom post type is registered with 'show in rest' => true and defaults to 'post' capability type, allowing Author-level users to create and publish FAQs via the REST API. An Author can submit entity-encoded malicious HTML (e.g., <img src=x onerror=alert()>) which bypasses WordPress's kses sanitization at save time (since kses sees entities as plain text, not tags), but is then decoded back into executable HTML by html entity decode() at render time. This makes it possible for authenticated attackers, with Author-level access and above, to inject arbitrary web scripts in FAQ pages that will execute whenever a user accesses an injected FAQ, either directly or via the [ultimate-faqs] shortcode.
Fix
XSS
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Ultimate Faq Accordion Plugin