CVE-2026-75575
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 14 - wyżej niż 14% wszystkich znanych CVE
Streszczenie
Rocket.Chat udostępnia metodę Meteor sendForgotPasswordEmail bez limitu szybkości DDP, co pozwala nieuwierzytelnionemu atakującemu na wielokrotne wywoływanie jej. Metoda jest dostępna przez DDP oraz przez HTTP POST /api/v1/method.callAnon/sendForgotPasswordEmail i wyzwala wysyłkę wiadomości resetujących hasło dla dowolnego adresu powiązanego z kontem. Brak reguły DDPRateLimiter umożliwia masowe wysyłanie e-maili oraz sondowanie adresów.
Ocena ryzyka
Ryzyko obejmuje przeciążenie serwera pocztowego, spam oraz możliwość enumeracji kont użytkowników, co może prowadzić do ataków phishingowych.
Rekomendacja
Zaleca się aktualizację Rocket.Chat do wersji, która wprowadza limit 10 wywołań na minutę na adres klienta, oraz monitorowanie ruchu sieciowego.
Inne podatności w Rocket.Chat
Zobacz wszystkie- CVE-2026-23477Wysokie
Rocket.Chat to platforma komunikacyjna typu open source, bezpieczna i w pełni konfigurowalna. W wersjach Rocket.Chat do 6.12.0, punkt końcowy API GET /api/v1/oauth-apps.get jest dostępny dla każdego uwierzytelnionego użytkownika, niezależnie od jego roli lub uprawnień. Ten punkt końcowy zwraca aplikację OAuth, o ile użytkownik zna jej ID, w tym potencjalnie wrażliwe pola, takie jak client_id i client_secret. Luka została naprawiona w wersji 6.12.0.
- CVE-2026-58066Krytyczne
W Rocket.Chat przed wersjami 8.7.0, 8.6.1, 8.5.2, 8.4.5, 8.3.7, 8.2.7, 8.1.7, 8.0.8 i 7.10.14, SAML SSO weryfikował podpisy XML, ale nie wiązał zweryfikowanego podpisu z samlp:Response / saml:Assertion. Atakujący mógł przesłać zawinięty dokument z fałszywymi atrybutami tożsamości wraz z dowolnym prawidłowym podpisem z zaufanego certyfikatu IdP i zalogować się jako dowolny użytkownik.
- CVE-2026-55666Krytyczne
W Rocket.Chat przed wersjami 8.5.1, 8.4.4, 8.3.6, 8.2.6, 8.1.6, 8.0.7 i 7.10.13, w pliku loginHandler.ts, funkcja handleIdentityToken parsuje JWT od Apple podczas OAuth. Jeśli JWT nie zawiera adresu email, aplikacja akceptuje dowolną wartość email podaną w żądaniu, co pozwala atakującemu na przejęcie konta.
- CVE-2026-48616Krytyczne
Wersje Rocket.Chat poniżej 8.5.1, 8.4.4, 8.3.6, 8.2.6, 8.1.6, 8.0.7, 7.13.9, 7.10.13 mają podatność w zakresie kontroli dostępu do plików Livechat. Proces autoryzacji pobierania chronionych plików nie weryfikuje, czy rc_rid odpowiada żądanemu plikowi, co umożliwia nieautoryzowane odkrywanie wszystkich przesłanych plików.
- CVE-2026-29198Krytyczne
W Rocket.Chat w wersjach poniżej 8.3.0, 8.2.1, 8.1.2, 8.0.3, 7.13.5, 7.12.6, 7.11.6 i 7.10.9 występuje podatność na wstrzyknięcie NoSQL, która może prowadzić do przejęcia konta pierwszego użytkownika z wygenerowanym tokenem, gdy aplikacja OAuth jest skonfigurowana.
- CVE-2026-65645Średnie
W Rocket.Chat przed wersjami 8.8.0, 8.7.1, 8.6.2, 8.5.3, 8.4.6, 8.3.8, 8.2.8, 8.1.8 i 7.10.15 metody DDP getThreadsList i getThreadMessages nie walidują typów parametrów rid i tmid. Można podstawić obiekt MongoDB (np. {"$gt": "4"}) zamiast identyfikatora pokoju lub wiadomości, co prowadzi do ujawnienia prywatnych wątków i ich odpowiedzi każdemu uwierzytelnionemu użytkownikowi o niskich uprawnieniach.
- CVE-2026-65644Wysokie
W Rocket.Chat przed wersjami 8.8.0, 8.7.1, 8.6.2, 8.5.3, 8.4.6, 8.3.8, 8.2.8, 8.1.8 i 7.10.15 endpoint REST POST /api/v1/livechat/visitor przyjmuje nieuwierzytelnione i niezdezynfekowane pole name dla odwiedzających Livechat. Ta nazwa jest przechowywana i renderowana przez dangerouslySetInnerHTML w panelu Omnichannel Queue, co umożliwia wstrzyknięcie klikalnego linku HTML do DOM agenta.
- CVE-2026-72919Średnie
W Rocket.Chat przed wersjami 7.10.14, 8.0.8, 8.1.7, 8.2.7, 8.3.7, 8.4.5, 8.5.2 i 8.6.1, endpoint REST channels.convertToTeam umożliwia uwierzytelnionemu użytkownikowi z uprawnieniem create-team konwersję niepowiązanego kanału publicznego poprzez podanie channelName zamiast channelId, ponieważ uprawnienie edit-room jest sprawdzane tylko dla channelId.
- CVE-2026-72918Średnie
W Rocket.Chat przed wersjami 7.10.14, 8.0.8, 8.1.7, 8.2.7, 8.3.7, 8.4.5, 8.5.2 i 8.6.1, strumień stream-notify-user w protokole WebSocket umożliwia uwierzytelnionemu użytkownikowi zapis dowolnych treści powiadomień, ponieważ nadawca nie jest sprawdzany, a interfejs klienta może utworzyć efemeryczną fałszywą wiadomość w otwartym czacie innego użytkownika.
- CVE-2026-55762Wysokie
W Rocket.Chat przed wersjami 8.5.1, 8.4.4, 8.3.6, 8.2.6, 8.1.6, 8.0.7 i 7.10.13, punkt końcowy POST /api/v1/fingerprint wymagał uwierzytelnienia, ale nie przeprowadzał kontroli autoryzacji. Każdy uwierzytelniony użytkownik mógł usunąć workspace z Rocket.Chat Cloud, co prowadziło do utraty wszystkich danych i wymagało ręcznej rejestracji.
Oryginalny opis (angielski, źródło NVD)
Rocket.Chat exposes the sendForgotPasswordEmail Meteor method without a DDP rate limit, so an unauthenticated caller may invoke it as often as it likes. The method is reachable over DDP and over the HTTP route POST /api/v1/method.callAnon/sendForgotPasswordEmail, and it triggers a password reset message for any address that matches an account. With no DDPRateLimiter rule registered for it, a caller can drive an unbounded volume of reset mail at a chosen address from the deployment's own mail sender, and can probe addresses at scale: the method answers true for an address with no account and for a successful send, but false when the address belongs to an account that authenticates through an external provider and Accounts_AllowPasswordChangeForOAuthUsers is off, so repeated calls distinguish that class of account. Later versions register a rule permitting ten calls per minute per client address.

