CVE-2026-90937
KrytyczneCVSS 9.9Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 18 - wyżej niż 18% wszystkich znanych CVE
Streszczenie
Froxlor w wersjach przed 2.2.5 nie waliduje znaków nowej linii w adresach URL przekierowań subdomen, co pozwala uwierzytelnionym klientom wstrzyknąć dowolne dyrektywy konfiguracji nginx lub Apache. Złośliwe adresy URL z literalnymi znakami nowej linii są zapisywane dosłownie do plików konfiguracji vhost podczas przebudowy cron, umożliwiając uszkodzenie konfiguracji serwera WWW, atak odmowy usługi lub przejęcie odpowiedzi HTTP dla hostowanych domen.
Ocena ryzyka
Uwierzytelniony klient może uszkodzić konfigurację serwera WWW, wywołać odmowę usługi lub przejąć ruch HTTP innych hostowanych domen. Ryzyko jest wysokie w środowiskach hostingowych z wieloma dzierżawcami.
Rekomendacja
Zaktualizuj Froxlor do wersji 2.2.5 lub nowszej. Sprawdź istniejące pliki konfiguracji vhost pod kątem wstrzykniętych dyrektyw.
Inne podatności w Froxlor
Zobacz wszystkie- CVE-2026-90935Średnie
Froxlor przed wersją 2.3.7 nie weryfikuje parametru mysql_server względem listy dozwolonych serwerów (allowed_mysqlserver) klienta w poleceniu API Mysqls.add. Atakujący mogą podać niedozwolony indeks serwera, aby tworzyć bazy danych i użytkowników MySQL na zabronionych serwerach, omijając kontrolę dostępu per klient.
- CVE-2024-58383Wysokie
Froxlor przed wersją 2.2.0 (dotyczy do 2.2.0-rc3 włącznie) generuje plik /etc/pure-ftpd/db/mysql.conf z uprawnieniami 0644 poprzez szablony konfiguracji XML w lib/configfiles/, mimo że plik zawiera hasło użytkownika SQL Froxlor. W systemach, w których katalogi nadrzędne są czytelne dla wszystkich (domyślnie w Debian 12), każdy nieuprzywilejowany lokalny użytkownik mogący wykonywać polecenia lub kod na hoście — w tym użytkownicy wirtualni bez dostępu SSH, którzy mogą przesyłać skrypty PHP/CGI — może odczytać plik i uzyskać poświadczenia bazy danych Froxlor. Dostęp do bazy danych można następnie wykorzystać do zmiany hasha hasła administratora i ziarna TOTP, zalogowania się jako administrator Froxlor i ostatecznie uzyskania uprawnień roota. Dotyczy tylko instancji skonfigurowanych do używania pure-ftpd.
- CVE-2026-62988Krytyczne
Froxlor 2.3.7 do 2.3.8 w poleceniach API Customers.get, Customers.listing, Admins.get, Admins.listing, Ftps.get i Ftps.listing zwraca pełne wiersze bazy danych bez usuwania pól haseł i data_2fa. Uwierzytelniony wywołujący API z uprawnieniami do tych punktów końcowych może uzyskać hasze haseł klientów, administratorów i FTP oraz zakodowane w Base32 sekrety TOTP dla kont administratorów i klientów. Hasze haseł można złamać offline, a sekrety TOTP mogą generować ważne kody drugiego czynnika, dopóki uwierzytelnianie dwuskładnikowe nie zostanie zresetowane. Ujawnienie obu wartości dla konta może umożliwić przejęcie panelu hostingowego lub hostowanych zasobów i może pokonać oba czynniki uwierzytelniania. Problem naprawiono w wersji 2.3.8.
- CVE-2015-5959Krytyczne
Froxlor w wersji przed 0.9.33.2 z domyślną konfiguracją może umożliwić zdalnym atakującym uzyskanie hasła do bazy danych poprzez odczytanie pliku /logs/sql-error.log.
- CVE-2016-5100Krytyczne
Froxlor w wersjach przed 0.9.35 wykorzystuje funkcję PHP rand do generowania liczb losowych, co ułatwia zdalnym atakującym odgadnięcie tokena resetowania hasła poprzez przewidywanie wartości.
- CVE-2026-90936Średnie
Froxlor przed wersją 2.3.7 nie ogranicza poprawnie wyszukiwania aliasów nadawców do bieżącego klienta w pliku customer_email.php. Uwierzytelnieni atakujący mogą wyliczać globalne identyfikatory aliasów nadawców i odczytywać dozwolone wartości nadawców innych klientów, podając dowolne parametry senderid w żądaniach potwierdzenia usunięcia.
- CVE-2026-90767Średnie
Froxlor przed wersją 2.3.12 nie waliduje poprawnie wieloliniowych kluczy publicznych SSH w punkcie końcowym SshKeys::add(). Umożliwia to klientom wstrzyknięcie dowolnych linii do plików authorized_keys, w tym złośliwych wpisów z dyrektywami opcji.
- CVE-2026-55593Średnie
Podatność w oprogramowaniu Froxlor przed wersją 2.3.8. Punkt wejścia lib/ajax.php omija centralną walidację żądań, a akcja editapikey nie sprawdza tokenu CSRF. Nieuwierzytelniony atakujący może nakłonić przeglądarkę administratora do wysłania sfałszowanego żądania, które dodaje adres atakującego do listy allowed_from klucza API lub usuwa jego wygaśnięcie, osłabiając zabezpieczenia klucza.
- CVE-2026-54543Średnie
Froxlor przed wersją 2.3.8 zawiera podatność w komendzie API DomainZones.add, która nie odrzuca znaków nowej linii, tabulacji, średników ani nieobsługiwanych typów rekordów DNS przed zapisem do pliku strefy BIND. Uwierzytelniony klient z uprawnieniami do stref DNS może wstrzyknąć dodatkowe linie rekordów, omijając walidację pól. BIND akceptuje wstrzyknięte rekordy, co pozwala na modyfikację danych DNS i może wpłynąć na dostępność DNS w strefie.
- CVE-2026-54348Wysokie
Froxlor przed wersją 2.3.8 zawiera podatność SQL Injection w endpointach Admins.add i Admins.update, gdzie atakujący administrator może zapisać tablicę ipaddress z dowolnymi elementami, które później są łączone w klauzulę SQL IN bez parametryzacji. Uwierzytelniony administrator z uprawnieniami change_serversettings może wykorzystać to do odczytania danych z bazy, w tym loginów i hashy haseł administratorów.
Oryginalny opis (angielski, źródło NVD)
froxlor versions before 2.2.5 fail to validate newline characters in subdomain redirect URLs, allowing authenticated customers to inject arbitrary nginx or Apache configuration directives. Attackers can supply URLs containing literal newlines that are written verbatim into vhost config files during cron rebuild, enabling web server configuration corruption, denial of service, or hijacking of HTTP responses across hosted domains.

