CVE-2026-62855
ŚrednieCVSS 4.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 40 - wyżej niż 40% wszystkich znanych CVE
Streszczenie
W FreeScout przed wersją 1.8.225 przeglądarka App Logs dostępna tylko dla administratora przyjmuje zaszyfrowane przez Laravel parametry folderu i pliku, których skonstruowana ścieżka jest sprawdzana tylko jako surowy ciąg znaków. Administrator znający APP_KEY może podać segmenty przejścia ścieżki, które system plików normalizuje poza storage/logs, umożliwiając odczyt lokalnych plików.
Ocena ryzyka
Możliwy jest odczyt plików środowiskowych, plików źródłowych, poświadczeń, tokenów i plików systemowych dostępnych dla procesu PHP. Wymaga to jednak uprawnień administratora i znajomości APP_KEY.
Rekomendacja
Zaktualizuj FreeScout do wersji 1.8.225 lub nowszej. Chroń APP_KEY i ogranicz dostęp administracyjny do zaufanych osób.
Inne podatności w FreeScout
Zobacz wszystkie- CVE-2026-41906Wysokie
FreeScout to darmowy system pomocy technicznej i wspólnej skrzynki odbiorczej zbudowany na frameworku Laravel. Przed wersją 1.8.214, modal zmiany klienta poprawnie ukrywał klientów spoza zakresu, jednak backendowa akcja conversation_change_customer akceptowała dowolny podany adres e-mail klienta.
- CVE-2026-41905Wysokie
FreeScout przed wersją 1.8.217 zawierał lukę w funkcji Helper::sanitizeRemoteUrl(), która nieprawidłowo walidowała adresy URL po przekierowaniach HTTP. Atakujący mógł wykorzystać tę lukę do przekierowania ruchu do wewnętrznych usług HTTP, które normalnie byłyby zablokowane.
- CVE-2026-41904Wysokie
FreeScout przed wersją 1.8.217 pozwala użytkownikom z uprawnieniami updateAutoReply na zapisanie ładunku XSS w wiadomości automatycznej odpowiedzi. Ładunek ten jest renderowany bez ucieczki w e-mailu automatycznej odpowiedzi wysyłanym do klientów.
- CVE-2026-53595Krytyczne
W FreeScout przed wersją 1.8.224 publiczny endpoint `POST /user-setup/{hash}/{invite_sent_at}` pozwala atakującemu na przejęcie konta użytkownika bez uwierzytelnienia. Podatność wynika z pomijania spacji w VARCHAR w MySQL/MariaDB oraz z nieprawidłowego deszyfrowania parametru `invite_sent_at`.
- CVE-2026-41902Krytyczne
FreeScout przed wersją 1.8.217 ma lukę w punkcie końcowym /user-setup/{hash}, który akceptuje 60-znakowy losowy invite_hash do ustawienia hasła nowego użytkownika. Brak weryfikacji wygaszenia hasha pozwala na nieautoryzowane przejęcie konta przez długi czas po wydaniu zaproszenia.
- CVE-2026-85742Wysokie
FreeScout przed wersją 1.8.230 pozwala uwierzytelnionemu atakującemu umieścić HTML w wartości adresu e-mail nieudanego logowania, który jest kopiowany przez monitorowaną aktywność użytkownika do kolejkowanego zadania SendAlert. Gdy dostarczenie alertu zawiedzie, zserializowany ładunek trafia do failed_jobs, a endpoint szczegółów zadania administratora renderuje go po filtrze blacklisty, który pozostawia wykonywalne atrybuty obsługi zdarzeń, umożliwiając wykonanie JavaScriptu w kontekście administratora.
- CVE-2026-85744Średnie
W FreeScout przed wersją 1.8.227 akcja conversation_merge zapisuje nieudaną kontrolę autoryzacji dla docelowej rozmowy w response['msg'], a następnie czyści tę wartość w pętli rozmowy źródłowej. Uwierzytelniony agent może scalić kontrolowaną przez siebie rozmowę z docelową rozmową w skrzynce, do której nie ma dostępu.
- CVE-2026-85743Wysokie
FreeScout przed wersją 1.8.230 ma niespójne egzekwowanie polityki ograniczania hostów w wielu ścieżkach wychodzących (Helper::downloadRemoteFile(), Helper::checkPort(), Helper::sanitizeRemoteUrl(), MailboxesController.php, ModulesController.php). Uwierzytelniony administrator lub użytkownik mogący zmieniać ustawienia połączeń skrzynek lub wyzwalać aktualizacje modułów może podać atakującemu kontrolowane URL-e lub hosty, docierając do pętli zwrotnej i usług wewnętrznych.
- CVE-2026-62856Wysokie
FreeScout przed wersją 1.8.226 nie escapuje wildcardów SQL LIKE w nazwach kanałów dostarczanych do endpointu polycast/receive, a autoryzacja kanałów dotyczy tylko nazw z określonymi prefiksami. Nieuwierzytelniony atakujący z sesją gościa i ważnym tokenem CSRF może podać nazwę kanału z wildcardem, aby pobrać zdarzenia powiadomień innych użytkowników, ujawniając treść wiadomości, identyfikatory, URL-e i HTML powiadomień.
- CVE-2026-62854Wysokie
FreeScout przed wersją 1.8.225 pozwala użytkownikowi mogącemu edytować podpis skrzynki połączyć skryptowalny plik przesłany przez /uploads/upload z zagnieżdżonymi fragmentami tagów omijającymi Helper::stripDangerousTags(). Wynikowy skrypt jest serwowany z tego samego origin, więc polityka script-src 'self' go przepuszcza, gdy inny użytkownik otworzy edytor odpowiedzi lub stronę nowego zgłoszenia.
Oryginalny opis (angielski, źródło NVD)
FreeScout is a self-hosted help desk and shared mailbox. Prior to 1.8.225, the administrator-only App Logs viewer accepts Laravel-encrypted folder and file parameters whose constructed path is checked only as a raw string. An administrator who also knows the APP_KEY can supply traversal segments that the filesystem normalizes outside storage/logs. The /app-logs/app route can then read local files accessible to the PHP worker, including environment files, source files, credentials, tokens, and operating-system files. This issue is fixed in version 1.8.225.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

