Description
The AI Engine – The Chatbot, AI Framework & MCP for WordPress plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 3.8.0 This is due to a chain of missing input neutralization and output escaping across the /mwai-ui/v1/chats/submit REST endpoint, the PHP error-log parser (MeowKit_MWAI_Helpers::php_error_logs), the Advisor task (Meow_MWAI_Modules_Advisor::run_advisor), and the Advisor dashboard widget (advisor_metabox): the server-parameter denylist in chat_submit strips only exact key names such as 'model' while convert_keys() later canonicalizes 'model_' back to 'model', allowing an unauthenticated caller to place an attacker-controlled string (including CR/LF) into $query->model; final_checks() throws an Exception whose message embeds that raw string, and the non-streaming, non-admin catch branch writes it to the PHP error log unmodified — creating a forged log line that the plugin's own parser subsequently returns as recent PHP-error content; run_advisor() then appends that content verbatim to the AI prompt (indirect prompt injection — CWE-1427), the returned JSON is stored in the mwai_advisor_data option with no schema validation or HTML sanitization, and advisor_metabox() concatenates the resulting 'title' and 'description' values directly into the WordPress dashboard widget without esc_html(), wp_kses(), or equivalent escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever an administrator accesses the WordPress dashboard.
Published: 2026-10-01
Score: 7.2 High
EPSS: < 1% Very Low
KEV: No
Impact: Stored cross‑site scripting that allows arbitrary JavaScript to run with an administrator’s privileges
Action: Immediate Patch
AI Analysis

Impact

The vulnerability arises from an unchecked 'model_' parameter in the AI Engine plugin’s chat submission endpoint. The input filtering mistakenly converts 'model_' to 'model', allowing an attacker to insert raw characters, including CR/LF, into the query. When the server throws an exception, the message containing that data is written unchanged to PHP’s error log. The plugin later parses the error log and returns its raw content into an AI prompt, which is stored without validation and rendered in the WordPress dashboard without escaping. As a result, an unauthenticated attacker can embed arbitrary JavaScript that will execute with the privileges of any administrator who views the dashboard, enabling cookie theft, credential hijacking, or further malicious actions.

Affected Systems

The affected product is the AI Engine – The Chatbot, AI Framework & MCP for WordPress plugin published by tigroumeow. All releases up to and including version 3.8.0 are vulnerable. Versions 3.8.1 and later contain the fix as indicated by the change set between those releases. Therefore, any WordPress site running the AI Engine plugin at a version ≤3.8.0 must be considered affected.

Risk and Exploitability

The CVSS score of 7.2 indicates a high impact if exploited. The absence of an EPSS score does not diminish the risk; the vulnerability can be triggered by a simple unauthenticated HTTP request to the /mwai-ui/v1/chats/submit REST endpoint. Because the payload ends up in a dashboard widget that is rendered in the administrator’s browser without escaping, the likelihood of a successful exploit is significant, especially if an attacker can target a site with active administrators. The vulnerability is not listed in the CISA KEV catalog, but the high impact and straightforward attack surface warrant prompt action.

Generated by OpenCVE AI on October 1, 2026 at 04:37 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the AI Engine plugin to version 3.8.1 or newer, which removes the problem.
  • Restrict the /mwai-ui/v1/chats/submit endpoint to authenticated users or add a nonce check so that only legitimate requests are processed.
  • Disable or remove the plugin’s error‑log parsing functionality or suppress PHP error logging for that plugin to prevent crafted log entries from being stored and later executed.

Generated by OpenCVE AI on October 1, 2026 at 04:37 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 01 Oct 2026 16:00:00 +0000

Type Values Removed Values Added
First Time appeared Tigroumeow
Tigroumeow ai Engine – The Chatbot And Ai Framework For Wordpress
Wordpress-extensions
Wordpress-extensions ai Engine
Vendors & Products Tigroumeow
Tigroumeow ai Engine – The Chatbot And Ai Framework For Wordpress
Wordpress-extensions
Wordpress-extensions ai Engine

Thu, 01 Oct 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 01 Oct 2026 03:45:00 +0000

Type Values Removed Values Added
Description The AI Engine – The Chatbot, AI Framework & MCP for WordPress plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 3.8.0 This is due to a chain of missing input neutralization and output escaping across the /mwai-ui/v1/chats/submit REST endpoint, the PHP error-log parser (MeowKit_MWAI_Helpers::php_error_logs), the Advisor task (Meow_MWAI_Modules_Advisor::run_advisor), and the Advisor dashboard widget (advisor_metabox): the server-parameter denylist in chat_submit strips only exact key names such as 'model' while convert_keys() later canonicalizes 'model_' back to 'model', allowing an unauthenticated caller to place an attacker-controlled string (including CR/LF) into $query->model; final_checks() throws an Exception whose message embeds that raw string, and the non-streaming, non-admin catch branch writes it to the PHP error log unmodified — creating a forged log line that the plugin's own parser subsequently returns as recent PHP-error content; run_advisor() then appends that content verbatim to the AI prompt (indirect prompt injection — CWE-1427), the returned JSON is stored in the mwai_advisor_data option with no schema validation or HTML sanitization, and advisor_metabox() concatenates the resulting 'title' and 'description' values directly into the WordPress dashboard widget without esc_html(), wp_kses(), or equivalent escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever an administrator accesses the WordPress dashboard.
Title AI Engine <= 3.8.0 - Unauthenticated Stored Cross-Site Scripting via 'model_' Parameter → PHP Error-Log Injection → Advisor Indirect Prompt Injection
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 7.2, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N'}


Subscriptions

Tigroumeow Ai Engine – The Chatbot And Ai Framework For Wordpress
Wordpress-extensions Ai Engine
cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-10-01T14:18:02.665Z

Reserved: 2026-09-23T13:16:53.044Z

Link: CVE-2026-96561

cve-icon Vulnrichment

Updated: 2026-10-01T14:17:57.036Z

cve-icon NVD

Status : Deferred

Published: 2026-10-01T04:18:22.110

Modified: 2026-10-01T15:17:37.143

Link: CVE-2026-96561

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T15:37:52Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')