CVE-2026-95816: Smart Forms <= 2.6.104 - Unauthenticated Stored Cross-Site Scripting via 'formString' Parameter
The Smart Forms – when you need more than just a contact form plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'formString' parameter in all versions up to, and including, 2.6.104 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. The nonce check protecting the rednaosmartformssaveformvalues AJAX handler is only enforced when the smartformsblockanonymoussubmissions option is enabled, meaning default installations require no authentication or nonce verification whatsoever to submit and store malicious payloads.
Affected Software
Event History
Frequently Asked Questions
Are default installations exposed to unauthenticated exploitation?
Yes. When smart_forms_block_anonymous_submissions is not enabled, the rednao_smart_forms_save_form_values AJAX handler does not enforce nonce verification, so an attacker can submit and store a malicious payload without authentication.
What must an attacker do to exploit this issue?
An attacker needs to submit a crafted value through the formString parameter to store arbitrary web script. The script executes when a user later accesses the page containing the injected content.
Which users are at risk from a stored payload?
Any user who accesses an injected page can trigger the stored script. The issue can affect confidentiality and integrity, while no availability impact is indicated by the provided severity vector.
Is there a configuration-based mitigation if patching cannot happen immediately?
Enabling the smart_forms_block_anonymous_submissions option causes the affected AJAX handler's nonce check to be enforced. This can reduce exposure to unauthenticated submissions while the plugin is updated or otherwise remediated.