Read the docs

Symlink-based zip slip in Appium ZIP extraction

Priority MEDIUM 62CWE-59Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
Required
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
None · High · None
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.

Summary

Appium and its @appium/support npm package before 7.2.6 mishandle ZIP extraction. An archive entry can create a symbolic link to a location outside the extraction directory, and a later regular-file entry then writes through that link (CWE-59). Because the containment check examines only entry names, an attacker-controlled archive can write files to arbitrary locations the Appium process can write to, which can overwrite configuration or executables and lead to code execution.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

Description from the CNA

Appium is a cross-platform automation framework for all kinds of apps, built on top of the W3C WebDriver protocol. Prior to 7.2.6, @appium/support ZIP extraction accepts an archive entry that creates a symbolic link to a location outside the extraction directory and then accepts a later regular-file entry whose legitimate name resolves through that link. The lexical containment check examines entry names without validating the symlink target or the real destination, so an attacker-controlled archive can write files to arbitrary locations writable by the Appium process. This is distinct from the earlier parent-directory entry-name traversal fixed in 7.0.6 because the bypass uses no parent-directory or absolute entry name. Depending on the writable destination, the arbitrary file write can overwrite configuration, startup scripts, or executables and lead to code execution. This issue is fixed in version 7.2.6.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.0064 50th percentileScored 2026-11-07
Fix Fixed appium (appium): 7.2.6@appium/support (npm): 7.2.6

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
appiumappiumbefore 7.2.67.2.6Patch availableCNA
—@appium/support (npm)before 7.2.67.2.6Patch availableGHSA-qfxx-c367-67f8
  • appium Vendorappium Affected before 7.2.6 Fixed in 7.2.6 Patch available CNA
  • @appium/support (npm) Vendor— Affected before 7.2.6 Fixed in 7.2.6 Patch available GHSA-qfxx-c367-67f8

Remediation

Upgrade appium and @appium/support to version 7.2.6.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

  • Fix · CNA appium (appium) Fixed in 7.2.6
  • Fix · GHSA-qfxx-c367-67f8 @appium/support (npm) Fixed in 7.2.6 Advisory →

Vendor assessments

Red Hat

Red Hat's page for this CVE →

Not affected: 1 product
  • Red Hat

Timeline

  1. 2026-10-15 Threatist record created from CVE-2026-103975
  2. 2026-10-15 CISA SSVC decision points changed
  3. 2026-10-16 Alias added: GHSA-qfxx-c367-67f8
  4. 2026-10-16 Fix available: npm/@appium/[email protected] · GHSA-qfxx-c367-67f8
  5. 2026-10-16 CVSS score added · GHSA-qfxx-c367-67f8
  6. 2026-10-16 Weakness changed · GHSA-qfxx-c367-67f8
  7. 2026-10-16 6 new references · GHSA-qfxx-c367-67f8
  8. 2026-11-06 Affected versions changed · Red Hat
  9. 2026-11-06 CVSS score added · Red Hat

References

  • TI-2026-41909 Appium: Unauthenticated arbitrary file/directory deletion in @appium/storage-plugin CVSS 3.1CRITICAL 10.0
  • TI-2023-02328 OS Command Injection in appium/appium-desktop CVSS 3.1CRITICAL 9.8
  • TI-2026-42099 MCP Appium: Unescaped Locator Data XSS in MCP-UI Resource (createLocatorGeneratorUI) CVSS 3.1HIGH 8.2
  • TI-2026-31973 Appium java-client Allows Network Pivot via Unvalidated directConnect Redirect in AppiumCommandExecutor CVSS 3.1HIGH 8.2
  • TI-2026-23797 Zip Slip arbitrary file write in @appium/support ZIP extraction CVSS 3.1MEDIUM 6.5
  • TI-2016-08598 Cryptographic flaw in HackerOne appium-chromedriver node module CVSS 3.0HIGH 8.1
See all 7 →

Sources