Katalog CVE

CVE-2026-92885

KrytyczneCVSS 9.8
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

Wtyczka Qode Membership dla WordPressa w wersjach do 2.0.6.2 włącznie zawiera błąd weryfikacji tokenu Facebook OAuth spowodowany literówką w nazwie zmiennej ($check_social_useqoder zamiast $check_social_user). Powoduje to, że warunek sprawdzający zawsze zwraca prawdę, a weryfikacja tokenu Graph API staje się martwym kodem, umożliwiając nieuwierzytelnionemu atakującemu zalogowanie się jako dowolne konto, w tym administratora, po podaniu nazwy loginu w parametrze response[email].

Ocena ryzyka

Atakujący może przejąć dowolne konto WordPressa, w tym konta administracyjne, bez znajomości hasła ani ważnego tokenu. Wymaga to jedynie uzyskania nonce qode_validate_facebook_login, który jest publicznie dostępny na stronach z shortcode'ami logowania lub rejestracji.

Rekomendacja

Jak najszybciej zaktualizować wtyczkę Qode Membership do wersji nowszej niż 2.0.6.2 lub ją wyłączyć, jeśli poprawka nie jest dostępna. Dodatkowo należy przejrzeć logi pod kątem nietypowych logowań i zresetować hasła kont administracyjnych.

Powiązane podatności

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

The Qode Membership plugin for WordPress is vulnerable to Authentication Bypass leading to Account Takeover in all versions up to, and including, 2.0.6.2 via the qode_membership_check_facebook_user AJAX action. This is due to a typographic error in the Facebook OAuth token verification guard within the qode_membership_login_user_from_social_network function — the guard condition tests an undefined variable ($check_social_useqoder instead of $check_social_user), causing empty() to always return true and rendering the Graph API token verification branch dead code, leaving wp_set_auth_cookie() reachable with no credential or token validation whatsoever. This makes it possible for unauthenticated attackers to log in as any existing WordPress account — including Administrator-level accounts — by supplying a known or enumerated administrator login name (rather than an email address) in the response[email] parameter, which the fallback path in get_user_by('login', $email) resolves to the matching account. Exploitation does require harvesting a valid qode_validate_facebook_login nonce, but this nonce is rendered on any public front-end page containing the [qode_user_login] or [qode_user_register] shortcode and is therefore obtainable without any prior authentication.

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