CVE-2026-3643: CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in onthemapmarketing Accessibly – WordPress Website Accessibility
The Accessibly plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the REST API in all versions up to, and including, 3.0.3. The plugin registers REST API endpoints at `/otm-ac/v1/update-widget-options` and `/otm-ac/v1/update-app-config` with the `permission_callback` set to `__return_true`, which means no authentication or authorization check is performed. The `updateWidgetOptions()` function in `AdminApi.php` accepts user-supplied JSON data and passes it directly to `AccessiblyOptions::updateAppConfig()`, which saves it to the WordPress options table via `update_option()` without any sanitization or validation. The stored `widgetSrc` value is later retrieved by `AssetsManager::enqueueFrontendScripts()` and passed directly to `wp_enqueue_script()` as the script URL, causing it to be rendered as a `<script>` tag on every front-end page. This makes it possible for unauthenticated attackers to inject arbitrary JavaScript that executes for all site visitors by changing the `widgetSrc` option to point to a malicious external script.
AI Analysis
Technical Summary
CVE-2026-3643 describes a stored cross-site scripting vulnerability in the Accessibly WordPress plugin (versions up to 3.0.3). The plugin exposes REST API endpoints `/otm-ac/v1/update-widget-options` and `/otm-ac/v1/update-app-config` with a permission callback that always returns true, effectively disabling authentication and authorization. The `updateWidgetOptions()` function accepts user JSON input and directly passes it to `AccessiblyOptions::updateAppConfig()`, which stores the data in the WordPress options table without sanitization. The stored `widgetSrc` value is later used as a script URL in `wp_enqueue_script()`, causing execution of attacker-controlled JavaScript on every front-end page load. This vulnerability allows unauthenticated attackers to inject persistent malicious scripts affecting all site visitors.
Potential Impact
An unauthenticated attacker can exploit this vulnerability to inject and store arbitrary JavaScript code that executes in the browsers of all visitors to the affected WordPress site. This can lead to theft of user credentials, session hijacking, defacement, or other malicious actions performed in the context of the vulnerable website. The CVSS score of 7.2 (high severity) reflects the network attack vector, lack of required privileges or user interaction, and the potential for confidentiality and integrity impact.
Mitigation Recommendations
No official patch or remediation has been confirmed at this time. Since the REST API endpoints lack authentication and allow unsafe data storage, site administrators should consider disabling or restricting access to these endpoints if possible. Monitor the vendor advisory for updates and apply any official fixes once available. Until then, avoid using the affected plugin version or remove it if feasible to prevent exploitation.
CVE-2026-3643: CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in onthemapmarketing Accessibly – WordPress Website Accessibility
Description
The Accessibly plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the REST API in all versions up to, and including, 3.0.3. The plugin registers REST API endpoints at `/otm-ac/v1/update-widget-options` and `/otm-ac/v1/update-app-config` with the `permission_callback` set to `__return_true`, which means no authentication or authorization check is performed. The `updateWidgetOptions()` function in `AdminApi.php` accepts user-supplied JSON data and passes it directly to `AccessiblyOptions::updateAppConfig()`, which saves it to the WordPress options table via `update_option()` without any sanitization or validation. The stored `widgetSrc` value is later retrieved by `AssetsManager::enqueueFrontendScripts()` and passed directly to `wp_enqueue_script()` as the script URL, causing it to be rendered as a `<script>` tag on every front-end page. This makes it possible for unauthenticated attackers to inject arbitrary JavaScript that executes for all site visitors by changing the `widgetSrc` option to point to a malicious external script.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
CVE-2026-3643 describes a stored cross-site scripting vulnerability in the Accessibly WordPress plugin (versions up to 3.0.3). The plugin exposes REST API endpoints `/otm-ac/v1/update-widget-options` and `/otm-ac/v1/update-app-config` with a permission callback that always returns true, effectively disabling authentication and authorization. The `updateWidgetOptions()` function accepts user JSON input and directly passes it to `AccessiblyOptions::updateAppConfig()`, which stores the data in the WordPress options table without sanitization. The stored `widgetSrc` value is later used as a script URL in `wp_enqueue_script()`, causing execution of attacker-controlled JavaScript on every front-end page load. This vulnerability allows unauthenticated attackers to inject persistent malicious scripts affecting all site visitors.
Potential Impact
An unauthenticated attacker can exploit this vulnerability to inject and store arbitrary JavaScript code that executes in the browsers of all visitors to the affected WordPress site. This can lead to theft of user credentials, session hijacking, defacement, or other malicious actions performed in the context of the vulnerable website. The CVSS score of 7.2 (high severity) reflects the network attack vector, lack of required privileges or user interaction, and the potential for confidentiality and integrity impact.
Mitigation Recommendations
No official patch or remediation has been confirmed at this time. Since the REST API endpoints lack authentication and allow unsafe data storage, site administrators should consider disabling or restricting access to these endpoints if possible. Monitor the vendor advisory for updates and apply any official fixes once available. Until then, avoid using the affected plugin version or remove it if feasible to prevent exploitation.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- Wordfence
- Date Reserved
- 2026-03-06T16:08:09.871Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 69df540182d89c981fbdb3e3
Added to database: 4/15/2026, 9:01:53 AM
Last enriched: 4/15/2026, 9:16:47 AM
Last updated: 4/16/2026, 6:17:39 AM
Views: 8
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.