CVE-2026-55578
WysokieCVSS 8.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 29 - wyżej niż 29% wszystkich znanych CVE
Streszczenie
Pheditor w wersjach 2.0.1-2.0.5 ma podatność w funkcji terminala, która używa niekompletnej listy blokowanych znaków. Znaki |, ` i nowa linia (0x0A) nie są blokowane, co pozwala uwierzytelnionemu użytkownikowi na ominięcie listy dozwolonych komend i wykonanie dowolnych poleceń OS.
Ocena ryzyka
Atakujący może wykonać dowolne polecenia na serwerze jako użytkownik www-data, co prowadzi do pełnej kompromitacji serwera.
Rekomendacja
Zaktualizuj Pheditor do wersji 2.0.6.
Inne podatności w Pheditor
Zobacz wszystkie- CVE-2026-66824Krytyczne
Podatność na trwałe XSS w narzędziu do wizualizacji drzewa przechwytywania. Serializowane dane drzewa były osadzane w bloku JavaScript inline, co pozwalało na wstrzyknięcie złośliwego kodu HTML/JavaScript. Atakujący mógł wykonać działania w kontekście sesji ofiary.
- CVE-2026-55579Krytyczne
Pheditor zawiera zakodowane na stałe domyślne hasło 'admin' (hash SHA-512). Brak mechanizmu wymuszającego zmianę hasła przy pierwszym logowaniu. Każde wdrożenie z domyślnymi danymi uwierzytelniającymi daje atakującemu pełny dostęp do edytora plików, przesyłania plików i terminala, umożliwiając odczyt/zapis plików i zdalne wykonanie kodu.
- CVE-2026-48030Krytyczne
Podatność na wstrzyknięcie poleceń systemu operacyjnego w Pheditorze. Uwierzytelniony użytkownik może wykonać dowolne polecenia systemowe poprzez wstrzyknięcie metaznaków powłoki do parametru 'dir' POST, omijając białą listę TERMINAL_COMMANDS.
- CVE-2026-54540Wysokie
Pheditor przed wersją 2.0.5 ma podatność w funkcji terminala, która sprawdza tylko początek komendy, a nie blokuje podstawiania komend shell ($()). Uwierzytelniony użytkownik może ominąć listę dozwolonych komend i wykonać dowolne polecenia OS.
Oryginalny opis (angielski, źródło NVD)
Pheditor is a single-file editor and file manager written in PHP. From version 2.0.1 to before version 2.0.6, the terminal feature in Pheditor uses an incomplete character blocklist to sanitize user-supplied commands before passing them to shell_exec(). After the fix for GHSA-9643-6xjp-vx57 (which added $ to the blocklist), the characters | (single pipe), ` (backtick), and the newline byte (0x0A) remain unblocked. An authenticated user with the terminal permission (enabled by default) can leverage any of these to bypass the TERMINAL_COMMANDS allowlist and execute arbitrary OS commands as the web server user. This issue has been patched in version 2.0.6.

