CVE-2026-3896
Description
The Livemesh SiteOrigin Widgets plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the lsow_admin_ajax AJAX action in all versions up to, and including, 3.9.2 due to missing authorization checks and insufficient input sanitization. The AJAX handler verifies a nonce but does not check user capabilities. This makes it possible for authenticated attackers with Subscriber-level access and above to modify plugin settings and inject malicious scripts that execute when administrators access the plugin settings page or when any user visits the frontend.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Livemesh SiteOrigin Widgets <= 3.9.2 allows Subscriber+ attackers to inject stored XSS via an AJAX handler lacking capability checks.
Vulnerability
The Livemesh SiteOrigin Widgets plugin for WordPress, version 3.9.2 and earlier, contains a Stored Cross-Site Scripting (XSS) vulnerability. The flaw resides in the lsow_admin_ajax AJAX action, specifically in the save_settings_callback function called from admin-ajax.php. The handler only verifies a nonce but does not check user capabilities [2]. As a result, any authenticated user — even a Subscriber — can modify plugin settings stored in the WordPress database and inject arbitrary JavaScript. The unsanitized values are later rendered both on the plugin settings page in wp-admin and on the frontend where widget settings are output [1][2].
Exploitation
An attacker needs a valid WordPress account with Subscriber-level or higher privileges. No further authorization is required. The attacker sends a POST request to wp-admin/admin-ajax.php with action=lsow_admin_ajax, func=lsow_save_settings, a valid nonce (obtainable from the settings page), and malicious payloads in the settings fields. The lsow_check_nonce() function verifies the nonce but does not enforce any capability check [2]. The plugin then saves the attacker's values without proper sanitization, making the payload persistent.
Impact
An authenticated attacker can inject arbitrary JavaScript that executes in the context of any administrator who visits the plugin settings page, or any user who visits a page displaying the affected widget. This can lead to session hijacking, credential theft, defacement, or further privilege escalation through admin-level actions. The attack does not require additional user interaction beyond normal browsing.
Mitigation
The vendor released version 3.9.3 on May 27, 2026, which adds a capability check (manage_options) to the AJAX handler, preventing low-privileged users from modifying plugin settings. Users should update to version 3.9.3 or later immediately. No other workarounds are available; upgrading the plugin is the only mitigation.
AI Insight generated on May 27, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
2<=3.9.2+ 1 more
- (no CPE)range: <=3.9.2
- (no CPE)range: <=3.9.2
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
4- plugins.trac.wordpress.org/browser/livemesh-siteorigin-widgets/tags/3.9.2/admin/admin-ajax.phpnvd
- plugins.trac.wordpress.org/browser/livemesh-siteorigin-widgets/tags/3.9.2/admin/views/settings.phpnvd
- plugins.trac.wordpress.org/browser/livemesh-siteorigin-widgets/tags/3.9.2/includes/helper-functions.phpnvd
- www.wordfence.com/threat-intel/vulnerabilities/id/a1510984-571b-49ce-9e10-129e2a1aca7bnvd
News mentions
0No linked articles in our index yet.