Privilege escalation in InstaWP Connect exposes master API key
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- High
- Impact type
- Privilege escalation
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-269.
Summary
InstaWP Connect (1-click WP Staging & Migration) for WordPress is affected through 0.1.4.1. The admin page is registered with a role name as its capability, and the master API key is printed in a plain-text field without a capability check (CWE-269). An authenticated attacker with Subscriber access or higher can read the key and use it to create an administrator login. Exploitation requires the site to be connected to InstaWP and an administrator to add the attacker's role to the Sync Tab Access list.
Written with Claude Haiku 5.5 from the sources below · 2026-10-28
Description from the CNA
The InstaWP Connect – 1-click WP Staging & Migration plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 0.1.4.1 This is due to the plugin registering its admin page via `add_management_page()` using a role name returned by `InstaWP_Setting::get_allowed_role()` as the required capability — which WordPress resolves as a real capability match for any user holding that role — combined with `generate_section_field()` rendering the master API key from the `instawp_api_options` option directly as the `value` attribute of a plain-text HTML input with no additional `manage_options` or equivalent capability check. This makes it possible for authenticated attackers with Subscriber-level access and above to read the plaintext master API key, use its SHA-256-derived secret as a bearer token accepted by the plugin's REST API `validate_api_request()`, and call `POST /wp-json/instawp-connect/v2/auto-login` to mint a 30-second single-use login URL that sets an administrator authentication cookie — fully escalating their privileges. Exploitation requires the site to be actively connected to InstaWP and an administrator to have added the attacker's role to the plugin's Sync Tab Access list (`instawp_sync_tab_roles`); notably, the settings tab suppression logic only hides the tab when `administrator` is absent from the list entirely, meaning a mixed configuration retaining administrator alongside a lower role still serves the full settings page — including the API key — to the lower-privileged user.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
The sources list no fixed version for InstaWP Connect (1-click WP Staging & Migration).
Written with Claude Haiku 5.5 from the sources below · 2026-10-28
Timeline
- 2026-10-16 Threatist record created from CVE-2026-109400
- 2026-10-16 CISA SSVC decision points changed
- 2026-10-16 Priority changed: MEDIUM → LOW
- 2026-10-16 Alias added: GHSA-frvw-wvjh-gg5q
References
Other 8
- https://www.wordfence.com/threat-intel/vulnerabilities/id/925b009e-3aeb-496d-8218-6ea5dc9d9989?source=cve
- https://plugins.trac.wordpress.org/browser/instawp-connect/tags/0.1.4.1/includes/class-instawp-setting.php#L186
- https://plugins.trac.wordpress.org/browser/instawp-connect/tags/0.1.4.1/admin/class-instawp-admin.php#L153
- https://plugins.trac.wordpress.org/browser/instawp-connect/tags/0.1.4.1/includes/class-instawp-setting.php#L91
- https://plugins.trac.wordpress.org/browser/instawp-connect/tags/0.1.4.1/includes/apis/class-instawp-rest-api.php#L663
- https://plugins.trac.wordpress.org/browser/instawp-connect/tags/0.1.4.1/includes/class-instawp-hooks.php#L194
- https://plugins.trac.wordpress.org/browser/instawp-connect/tags/0.1.4.1/includes/functions.php#L1041
- https://plugins.trac.wordpress.org/changeset/3743786/instawp-connect/trunk/includes/class-instawp-setting.php
More InstaWP vulnerabilities
- TI-2025-02302 InstaWP Connect <= 0.1.0.85 - Unauthenticated Local PHP File Inclusion CVSS 3.1HIGH 8.1
- TI-2024-04554 Missing authorization in InstaWP Connect – 1-click WP Staging & Migration CVSS 3.1CRITICAL 9.8
- TI-2024-02482 InstaWP Connect – 1-click WP Staging & Migration <= 0.1.0.22 - Unauthenticated Arbitrary File Upload CVSS 3.1CRITICAL 9.8
- TI-2023-03675 Missing authorization in InstaWP Connect – 1-click WP Staging & Migration CVSS 3.1CRITICAL 9.8
- TI-2024-05939 InstaWP Connect – 1-click WP Staging & Migration <= 0.1.0.44 - Authentication Bypass to Admin CVSS 3.1CRITICAL 9.8
- TI-2024-24743 WordPress InstaWP Connect plugin <= 0.1.0.38 - Arbitrary File Upload vulnerability CVSS 3.1CRITICAL 10.0
Sources
- CVE-2026-109400 · CVE Program
- CVE-2026-109400 · NVD
- FIRST EPSS
- GHSA-frvw-wvjh-gg5q · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences