CVE-2026-109224: SureCart <= 4.9.4 - Unauthenticated Stored Cross-Site Scripting via sc-cart-loader 'template' Attribute in Comment
The SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'comment' parameter in all versions up to, and including, 4.9.4 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. Successful execution requires the affected comment to appear on a post that loads the surecart-components runtime (e.g. via a [scbuybutton] shortcode) and contains no sc-checkout element, as these conditions trigger the innerHTML sink in sc-cart-loader.
Affected Software
Event History
Frequently Asked Questions
Which sites are exposed to script execution from this issue?
A vulnerable site is exposed when an attacker can supply the affected comment value and it is rendered on a post that loads the surecart-components runtime, such as through an [sc_buy_button] shortcode. The post must also not contain an sc-checkout element, because those conditions trigger the vulnerable innerHTML sink in sc-cart-loader.
Does exploitation require an attacker account or user interaction?
No attacker authentication or prior privileges are required to inject the script. A user must access the page containing the injected content for the stored script to execute in that user's browser.
How can I identify potentially affected pages?
Review posts that use [sc_buy_button] or otherwise load the surecart-components runtime, then identify those without an sc-checkout element. Check whether untrusted values have been supplied through the affected comment parameter on those pages.