CVE-2026-65645
ŚrednieCVSS 4.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 9 - wyżej niż 9% wszystkich znanych CVE
Streszczenie
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.
Ocena ryzyka
Uwierzytelnieni użytkownicy o niskich uprawnieniach mogą uzyskać dostęp do prywatnych treści, co narusza poufność komunikacji.
Rekomendacja
Zaleca się natychmiastową aktualizację Rocket.Chat do wersji, w której poprawiono walidację parametrów DDP.
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-75575Średnie
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.
- 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 in versions before 8.8.0, 8.7.1, 8.6.2, 8.5.3, 8.4.6. 8.3.8, 8.2.8, 8.1.8, and 7.10.15, the Meteor DDP methods getThreadsList and getThreadMessages accept rid / tmid as raw, untyped parameters with no schema validation. A MongoDB operator object (e.g. {"$gt": "4"}) can be substituted for a string room-id or message-id. The authorization check resolves to a room the attacker already has access to, while the downstream data query fans out across all rooms - disclosing private thread parents and their full reply content to any low-privilege authenticated user. The REST route chat.getThreadsList was patched in v5.0 (HackerOne report #1446767) by adding rid: {type:'string'} AJV validation. The equivalent DDP method was never given the same fix and remains exploitable

