CVE-2026-85742
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 19 - wyżej niż 19% wszystkich znanych CVE
Streszczenie
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.
Ocena ryzyka
Administrator otwierający stronę szczegółów zadania może nieświadomie wykonać złośliwy JavaScript w kontekście tej samej domeny, co pozwala na wykonywanie akcji administracyjnych i kradzież danych sesji.
Rekomendacja
Zaktualizuj FreeScout do wersji 1.8.230 lub nowszej. Rozważ ograniczenie dostępu do endpointu /system/ajax-html/job_details/{id} wyłącznie do zaufanych sieci administracyjnych.
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-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-62855Średnie
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.
- 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.230, a pre-authenticated attacker can place HTML in a failed-login email value that is copied through monitored user activity into a queued SendAlert job. If alert delivery fails, the serialized payload is stored in failed_jobs and the administrator job-details endpoint renders it after a blacklist sanitizer that leaves executable event-handler attributes. When an administrator opens /system/ajax-html/job_details/{id} as a top-level page, the raw fragment lacks the normal layout policy and attacker-controlled JavaScript can perform same-origin administrator actions. Logs Monitoring for users, a failed alert email job, queue failure storage, and top-level administrator interaction are all required; the normal modal path is not affected in the tested configuration. This issue is fixed in version 1.8.230.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

