CVE-2026-85590
WysokieCVSS 7.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 32 - wyżej niż 32% wszystkich znanych CVE
Streszczenie
phpMyFAQ przed wersją 4.1.8 zawiera podatność na ominięcie uwierzytelniania w funkcji wyłączania dwuskładnikowego uwierzytelniania (TOTP). Procedura removeTwofactorConfig() weryfikuje tylko zalogowanie użytkownika i ważny token CSRF, po czym wyłącza TOTP bez wymogu ponownego podania hasła lub aktualnego kodu TOTP. Atakujący, który przejął sesję użytkownika, może po cichu usunąć ochronę dwuskładnikową z dowolnego konta, w tym administratora.
Ocena ryzyka
Ryzyko dla organizacji obejmuje przejęcie kont uprzywilejowanych po wcześniejszym przejęciu sesji, co może prowadzić do nieautoryzowanego dostępu do danych i systemów. Utrata ochrony dwuskładnikowej zwiększa prawdopodobieństwo skutecznych ataków na konta.
Rekomendacja
Zaleca się natychmiastową aktualizację phpMyFAQ do wersji 4.1.8 lub nowszej. Dodatkowo należy wymusić ponowne uwierzytelnienie (hasło lub kod TOTP) przy każdej zmianie ustawień 2FA oraz monitorować sesje pod kątem podejrzanych działań.
Inne podatności w phpMyFAQ
Zobacz wszystkie- CVE-2026-56738Wysokie
phpMyFAQ przed wersją 4.1.6 ma podatność w metodzie StopWords::add(), która buduje zapytanie SQL INSERT za pomocą sprintf() i wstawia wartość słowa zatrzymanego bezpośrednio do zapytania bez wywołania funkcji eskejpowania bazy danych. Uwierzytelniony administrator może przesłać spreparowaną wartość, która przełamuje literał łańcucha SQL i wstrzykuje dowolny SQL, w tym usuwanie tabel, eksfiltrację danych lub modyfikację innych wierszy.
- CVE-2026-56737Wysokie
phpMyFAQ w wersjach od 3.2.0 do 4.1.5 zawiera obejście uwierzytelniania w publicznym przepływie weryfikacji dwuskładnikowej. Nieuwierzytelniony atakujący może podać numeryczne ID użytkownika i ważny lub zbrutowany sześciocyfrowy kod TOTP bez znajomości hasła, co pozwala przejąć konto z włączonym 2FA, w tym konta administratorów. Wersja 4.1.6 naprawia problem poprzez powiązanie weryfikacji TOTP z sesją ustanowioną po poprawnym uwierzytelnieniu hasłem oraz ograniczenie nieudanych prób TOTP.
- CVE-2026-56736Wysokie
phpMyFAQ to open source'owa aplikacja webowa FAQ. Podatność typu stored XSS w wersjach przed 4.2.0-alpha pozwala nieuwierzytelnionemu użytkownikowi (lub użytkownikowi o niskich uprawnieniach) na wstrzyknięcie dowolnego kodu JavaScript, który wykonuje się w przeglądarce administratora podczas przeglądania lub edycji wpisu FAQ. Prowadzi to do przejęcia konta administratora poprzez kradzież sesji.
- CVE-2026-57994Średnie
Podatność w phpMyFAQ przed wersją 4.1.5 pozwala nieuwierzytelnionym atakującym na odczyt nieaktywnych (wersje robocze lub tylko do recenzji) treści FAQ poprzez niespójne filtrowanie w publicznych punktach końcowych API.
- CVE-2026-57961Niskie
phpMyFAQ przed wersją 4.1.5 zawiera podatność na ścieżkowy atak typu path traversal w funkcji concatenatePaths() w pliku Wrapper.php. Użytkownik z uprawnieniami do edycji FAQ może przechowywać HTML z spreparowanymi ścieżkami obrazów, które są przetwarzane podczas generowania PDF. Brak kanonizacji ścieżki i walidacji ograniczenia do katalogu głównego może pozwolić na odczyt plików poza zamierzonym katalogiem treści.
- CVE-2026-35676Wysokie
phpMyFAQ przed wersją 4.1.3 zawiera podatność na nieautoryzowane resetowanie haseł w API aktualizacji haseł użytkowników, co pozwala atakującym na zmianę haseł kont bez walidacji tokenów.
- CVE-2026-46367Wysokie
phpMyFAQ przed wersją 4.1.2 zawiera podatność na przechowywane ataki typu cross-site scripting w funkcji Utils::parseUrl(). Umożliwia to uwierzytelnionym użytkownikom wstrzykiwanie JavaScriptu za pomocą źle sformatowanych URL-i w komentarzach.
- CVE-2026-46366Wysokie
phpMyFAQ przed wersją 4.1.2 zawiera podatność na ujawnienie informacji w metodzie getIdFromSolutionId(), która nie stosuje filtracji uprawnień. Umożliwia to nieautoryzowanym atakującym enumerację zastrzeżonych wpisów FAQ oraz odczyt ich tytułów przez punkt końcowy /solution_id_{id}.html.
- CVE-2026-46359Wysokie
phpMyFAQ przed wersją 4.1.2 zawiera podatność na wstrzykiwanie SQL w funkcji CurrentUser::setTokenData, która pozwala uwierzytelnionym atakującym na wykonywanie dowolnych zapytań SQL poprzez wstrzykiwanie złośliwych roszczeń tokenów OAuth.
- CVE-2017-15808Wysokie
W phpMyFaq przed wersją 2.9.9 występuje podatność typu CSRF w pliku admin/ajax.config.php.
Oryginalny opis (angielski, źródło NVD)
phpMyFAQ before 4.1.8 contains an authentication bypass vulnerability in its two-factor authentication (TOTP) disable functionality. The removeTwofactorConfig() handler (reachable via POST /api/user/remove-twofactor) verifies only that the user is logged in and that a valid CSRF token is supplied, then disables TOTP without requiring password re-entry or a current TOTP code. The same downgrade is also reachable inline via PUT /api/user/data/update, which accepts a plain twofactor_enabled form field under the same session+CSRF-only guard. An attacker who has hijacked a user's session can silently strip two-factor protection from any account, including administrator accounts, after which password-only authentication succeeds.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

