Katalog CVE

CVE-2026-109400

WysokieCVSS 7.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.35%

Percentyl 27 - wyżej niż 27% wszystkich znanych CVE

Streszczenie

Wtyczka InstaWP Connect – 1-click WP Staging & Migration dla WordPressa (wersje do 0.1.4.1 włącznie) jest podatna na eskalację uprawnień. Strona administracyjna wtyczki jest rejestrowana z użyciem nazwy roli zwracanej przez InstaWP_Setting::get_allowed_role() jako wymaganej zdolności, a pole z kluczem API jest renderowane jako zwykły tekstowy input bez dodatkowej weryfikacji uprawnień manage_options. Uwierzytelniony użytkownik z rolą Subscriber lub wyższą może odczytać jawny klucz API, użyć jego sekretu jako tokenu bearer w REST API wtyczki i wywołać POST /wp-json/instawp-connect/v2/auto-login, aby uzyskać 30-sekundowy link logowania ustawiający cookie administratora.

Ocena ryzyka

Atakujący z niskimi uprawnieniami może przejąć pełną kontrolę nad witryną WordPress, w tym uzyskać dostęp administracyjny i wykonać dowolne działania. Wymaga to aktywnego połączenia witryny z InstaWP oraz dodania roli atakującego do listy Sync Tab Access, przy czym konfiguracja mieszana z administratorem i niższą rolą nadal ujawnia klucz API.

Rekomendacja

Natychmiast zaktualizuj wtyczkę InstaWP Connect do wersji nowszej niż 0.1.4.1, jeśli jest dostępna, lub ją wyłącz. Sprawdź i usuń niższe role z listy instawp_sync_tab_roles oraz zweryfikuj, czy klucz API nie został ujawniony.

Powiązane podatności

Oryginalny opis (angielski, źródło NVD)

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.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS