CVE-2026-56396
WysokieCVSS 8.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 16 - wyżej niż 16% wszystkich znanych CVE
Streszczenie
phpMyFAQ w wersjach przed 4.1.4 zawiera luki w autoryzacji w punktach końcowych editUser() i updateUserRights(), które pozwalają uwierzytelnionym administratorom na eskalację uprawnień. Użytkownicy, którzy nie są SuperAdminami, ale mają uprawnienia edit_user, mogą ustawić flagę is_superadmin lub przyznać dowolne uprawnienia, co prowadzi do uzyskania dostępu SuperAdmina.
Ocena ryzyka
Eskalacja uprawnień przez nieuprawnionych użytkowników może prowadzić do poważnych naruszeń bezpieczeństwa, w tym do nieautoryzowanego dostępu do wrażliwych danych i funkcji administracyjnych. Organizacje powinny być świadome ryzyka związanego z niewłaściwym zarządzaniem uprawnieniami.
Rekomendacja
Zaleca się aktualizację phpMyFAQ do wersji 4.1.4 lub nowszej, aby usunąć te luki w autoryzacji. Dodatkowo, należy przeprowadzić audyt uprawnień użytkowników, aby upewnić się, że tylko uprawnieni administratorzy mają dostęp do krytycznych funkcji.
Inne podatności w phpMyFAQ
Zobacz wszystkie- CVE-2026-76213Wysokie
phpMyFAQ przed wersją 4.1.7 zawiera podatność brute-force w kroku uwierzytelniania dwuskładnikowego, gdzie licznik nieudanych prób jest powiązany z sesją i resetowany po każdym pomyślnym ponownym uwierzytelnieniu hasłem. Atakujący z ważnym hasłem może ominąć limit pięciu prób, uzyskując nowy ciasteczko sesji i wielokrotnie ponownie uwierzytelniając się, aby zresetować licznik, co umożliwia nieograniczone zgadywanie kodów TOTP.
- CVE-2026-76208Wysokie
phpMyFAQ w wersjach 3.1.0 do 4.1.6 zawiera podatność obejścia uwierzytelniania w funkcji AuthLdap::create(). Gdy uwierzytelnianie LDAP jest włączone, po pomyślnym wiązaniu LDAP kod wywołuje User::setStatus('active') bezwarunkowo, co nadpisuje kolumnę account_status istniejącego lokalnego konta z 'blocked' na 'active'. W rezultacie użytkownik, którego lokalne konto phpMyFAQ zostało administracyjnie zablokowane, może przywrócić swoje konto i zalogować się, uwierzytelniając się przez LDAP. Zmiana stanu nie jest logowana, więc administratorzy nie mogą wykryć, że blokada została nadpisana. Poprawiono w wersji 4.1.7.
- CVE-2026-75919Średnie
phpMyFAQ przed wersją 4.1.7 zawiera podatność na ominięcie uwierzytelniania w SetupController, która pozwala nieuwierzytelnionym atakującym na uruchamianie migracji bazy danych i tworzenie kopii zapasowych konfiguracji, gdy tryb konserwacji jest włączony. Atakujący mogą wywołać punkty POST /api/setup/update-database i POST /api/setup/backup, aby wykonać aktualizacje bazy danych, wyłączyć tryb konserwacji i wyodrębnić dane uwierzytelniające bazy danych z wygenerowanych archiwów ZIP.
- 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.4 contains missing authorization vulnerabilities in editUser() and updateUserRights() endpoints that allow authenticated administrators to escalate privileges. Non-SuperAdmin users with edit_user permission can set is_superadmin flag or grant arbitrary rights to escalate to SuperAdmin access.

