High, CVSS 8.2MavenAmendedPublished
java-client Allows Network Pivot via Unvalidated directConnect Redirect in AppiumCommandExecutor
CVE-2026-43910 · GHSA-28f5-38xr-jh2w
- Affected
- Maven io.appium:java-client >= 8.2.1, <= 10.1.0
- Fixed in
- 10.1.1· Vendor fix available
- Issue
- When directConnect(true) is enabled, appium/java-client unconditionally accepts directConnectHost, directConnectPort, and directConnectPath from the server's NEWSESSION response and silently redirects all subsequent session traffic to the attacker-specified endpoint — with no allowlist, no host validation, and no user notification. Affected Code - AppiumCommandExecutor.java (line 196–219): setDirectConnect() builds a new URL from server-supplied fields and calls overrideServerUrl(newUrl) without validating host/IP. - DirectConnect.java: getUrl() constructs protocol://host:port/path with no allowlist. Root Cause Only the protocol is validated (must equal "https"). The destination host and port are never checked against any allowlist or denylist. PoC (confirmed) A rogue server injecting directConnectHost=127.0.0.1:4443 causes the client to silently redirect all post-session commands: [bootstrap] POST /wd/hub/session [bootstrap] Injecting directConnect -…
Recommended action: Upgrade to 10.1.1 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.