Description
MCP Appium is an MCP server that provides AI assistants with tools to automate mobile app testing on Android and iOS. In versions prior to 1.85.10, the createLocatorGeneratorUI function interpolates attacker-controlled element attributes — text, content-desc, resource-id, and locator selector values — directly into an HTML template literal without any HTML or JavaScript context escaping. An attacker who controls the UI of the app under test can inject arbitrary HTML and JavaScript into the MCP UI resource returned by the generate_locators tool. When a victim's MCP client renders this resource, the injected script executes and can invoke arbitrary MCP tools via window.parent.postMessage, leading to unauthorized MCP tool execution such as taking screenshots, reading page source, or any other registered capability. This issue has been fixed in version 1.85.10.
Published: 2026-07-13
Score: 8.2 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The createLocatorGeneratorUI endpoint in MCP Appium interpolates user‑controlled element attributes—text, content‑desc, resource‑id, and locator selector values—directly into an HTML template literal without any escaping. This yields a reflected cross‑site scripting flaw in the MCP‑UI resource generated by the generate_locators tool. When an attacker who controls the UI of the application under test supplies crafted attribute values, malicious HTML and JavaScript are embedded into the resource. When a victim’s MCP client renders this resource, the injected script executes in the client’s context and can use window.parent.postMessage to invoke any registered MCP tool, such as taking screenshots, retrieving page source, or executing other capabilities. The impact is the ability to run arbitrary MCP commands as the client, potentially exposing sensitive test data.

Affected Systems

The vulnerability affects the Appium appium-mcp server running any version prior to 1.85.10. This includes installations used for Android or iOS testing. The flaw resides in the createLocatorGeneratorUI function across all affected releases and is fixed in version 1.85.10 and later.

Risk and Exploitability

The CVSS score of 8.2 reflects a high‑severity scenario. The EPSS score is less than 1 %, indicating a low probability of widespread exploitation at present, and the vulnerability is not listed in the CISA KEV catalog. The likely attack vector involves an attacker who can control the UI of an app under test and supply malicious locator attributes. Practical exploitation also requires a victim MCP client to render the unsanitized UI resource. Consequently, the theoretical risk is significant but real‑world exploitation requires specific conditions in the testing workflow.

Generated by OpenCVE AI on July 31, 2026 at 11:17 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Appium MCP to version 1.85.10 or later, where input sanitization has been implemented.
  • If an upgrade cannot be performed immediately, disable or restrict the generate_locators endpoint so that it does not accept UI data from untrusted applications.
  • Configure the MCP client to operate in a sandboxed environment that blocks or ignores script execution within UI resources.

Generated by OpenCVE AI on July 31, 2026 at 11:17 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 14 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Mon, 13 Jul 2026 21:30:00 +0000

Type Values Removed Values Added
Description MCP Appium is an MCP server that provides AI assistants with tools to automate mobile app testing on Android and iOS. In versions prior to 1.85.10, the createLocatorGeneratorUI function interpolates attacker-controlled element attributes — text, content-desc, resource-id, and locator selector values — directly into an HTML template literal without any HTML or JavaScript context escaping. An attacker who controls the UI of the app under test can inject arbitrary HTML and JavaScript into the MCP UI resource returned by the generate_locators tool. When a victim's MCP client renders this resource, the injected script executes and can invoke arbitrary MCP tools via window.parent.postMessage, leading to unauthorized MCP tool execution such as taking screenshots, reading page source, or any other registered capability. This issue has been fixed in version 1.85.10.
Title MCP Appium: Unescaped Locator Data XSS in MCP-UI Resource (createLocatorGeneratorUI)
Weaknesses CWE-79
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-14T14:31:14.587Z

Reserved: 2026-06-30T20:21:25.813Z

Link: CVE-2026-58500

cve-icon Vulnrichment

Updated: 2026-07-14T14:24:53.371Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-31T11:30:05Z

Weaknesses
  • CWE-79

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