CVE-2026-73214
WysokieCVSS 8.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 36 - wyżej niż 36% wszystkich znanych CVE
Streszczenie
Coturn przed wersją 4.16.0 ma podatność w funkcjach dtls_server_input_handler() i create_new_connected_udp_socket(), które przechowują stan OpenSSL dtls1_reassemble_fragment() dla 35-bajtowego pofragmentowanego ClientHello deklarującego 650 000-bajtowe uzgadnianie przed walidacją ciasteczka. Nieuwierzytelniony zdalny nadawca może wyczerpać pamięć bez poświadczeń TURN, ukończonego uzgadniania, ważnego ciasteczka lub spoofingu źródła.
Ocena ryzyka
Atak może prowadzić do wyczerpania pamięci serwera, co może spowodować awarię usługi i przerwy w działaniu dla wszystkich użytkowników.
Rekomendacja
Zaleca się aktualizację Coturn do wersji 4.16.0 lub nowszej oraz ograniczenie dostępu do portów DTLS tylko dla zaufanych źródeł.
Inne podatności w Coturn
Zobacz wszystkie- CVE-2026-104074Średnie
Coturn 4.10.0 zawiera lukę ujawnienia niezainicjalizowanej pamięci, która pozwala zdalnym nieuwierzytelnionym atakującym na wyciek zawartości stosu poprzez wysłanie żądania TURN Allocate bez poświadczeń. Funkcja stun_init_error_response_common_str() nie zeruje bufora avalue przed obliczeniem jego długości i skopiowaniem wyciekłych bajtów stosu do frazy ERROR-CODE.
- CVE-2026-68555Średnie
Coturn w wersji 4.15.0 ma podatność, która pozwala uwierzytelnionemu użytkownikowi TURN na wielokrotne wznawianie alokacji z nowych 5-krotek UDP bez zakończenia przekazania, gdy włączona jest opcja --mobility. Prowadzi to do nieograniczonej liczby sesji po stronie serwera i wyczerpania pamięci procesu, nawet przy skonfigurowanym --user-quota=1.
- CVE-2026-68554Niskie
Coturn to darmowa implementacja serwera TURN i STUN. Przed wersją 4.15.0 atakujący w ścieżce sieciowej może dodać atrybuty po MESSAGE-INTEGRITY do uwierzytelnionego żądania STUN przez zwykły UDP lub TCP, dostosować długość nagłówka STUN i przeliczyć niekluczowany FINGERPRINT, podczas gdy oryginalny HMAC pozostaje ważny, ponieważ obejmuje tylko prefiks wiadomości. Parsowanie po stronie serwera w src/server/ns_turn_server.c kontynuuje po MESSAGE-INTEGRITY przez handle_turn_allocate(), handle_turn_create_permission(), handle_turn_refresh() i handle_turn_command(), co pozwala na nadpisanie czasu życia alokacji, wstrzyknięcie uprawnienia lub ominięcie kontroli pochodzenia przez atrybuty LIFETIME, XOR-PEER-ADDRESS lub ORIGIN. Wdrożenia TLS i DTLS zapobiegają tej modyfikacji w tranzycie. Problem naprawiono w wersji 4.15.0.
- CVE-2026-68553Wysokie
W Coturn przed wersją 4.13.0 uwierzytelniony użytkownik TURN może umieścić specyfikatory formatu printf w atrybutach STUN USERNAME lub REALM, które przechodzą walidację is_secure_string() i są osadzane w kluczach Redis. Funkcja send_message_to_redis() przekazuje kontrolowany klucz jako argument formatu do redisAsyncCommand(), co może prowadzić do odczytu poza va_list. Eksploitacja może spowodować awarię procesu coturn lub ujawnienie pamięci stosu do Redis.
- CVE-2026-68552Średnie
Coturn przed wersją 4.15.0 ma podatność, w której nieuwierzytelniony klient może wysłać wiadomość STUN przez TCP/TLS z polem długości treści od 65520 do 65532, powodując zawinięcie zmiennej len w stun_get_message_len_str(). Prowadzi to do desynchronizacji parsera strumienia i zerwania połączenia atakującego klienta, ale nie wpływa na innych klientów ani proces serwera.
- CVE-2026-73216Średnie
Coturn to implementacja serwerów TURN i STUN. Przed wersją 4.17.0 funkcja shutdown_client_connection() przedwcześnie wywołuje dec_quota() i zwalnia rozliczanie przepustowości podczas pierwszego etapu zamykania alokacji z włączoną mobilnością, zachowując alokację, gniazdo przekaźnikowe, sesję i bilet mobilności. Umożliwia to uwierzytelnionemu klientowi ominięcie limitów --user-quota i --total-quota oraz wyczerpanie portów przekaźnikowych. Problem naprawiono w wersji 4.17.0.
- CVE-2026-73215Wysokie
Coturn przed wersją 4.17.0 ma podatność w funkcji turnports_allocate_even(), która oznacza nieużywany port nieparzysty jako TPS_TAKEN_ODD dla żądania Allocate z parzystym portem i bitem rezerwacji R=0, mimo że żaden gniazdo RTCP go nie zwolni. Uwierzytelniony klient może trwale wyczerpać pulę portów relay, powodując błędy alokacji z kodem STUN 508.
- CVE-2026-73213Średnie
Coturn to implementacja serwerów TURN i STUN. Przed wersją 4.16.0 funkcja addr_less_eq() w src/client/ns_turn_ioaddr.c używa porównania składowych dla natywnych zakresów IPv6 min-max w ioa_addr_in_range(), co pozwala uwierzytelnionemu klientowi TURN na przekazywanie do peera IPv6, który numerycznie znajduje się w skonfigurowanym zakresie denied-peer-ip (nie wyrównanym do prefiksu), ale jest klasyfikowany jako poza nim. Problem naprawiono w wersji 4.16.0.
- CVE-2026-73212Średnie
Coturn przed wersją 4.13.1 zawiera podatność w funkcji good_peer_addr(), która nie kanonizuje adresów IPv4-kompatybilnych, 6to4 i NAT64 (64:ff9b::/96). Umożliwia to uwierzytelnionemu klientowi TCP CONNECT (RFC 6062) ominięcie zakresu adresów IPv4 z listy zabronionych (denied-peer-ip), gdy host Coturn ma odpowiednią trasę translacji.
- CVE-2026-65981Wysokie
Coturn w wersjach przed 4.15.0 z włączoną opcją --mobility zawiera podatność, która pozwala uwierzytelnionemu atakującemu na przejęcie sesji REFRESH innego użytkownika. Atakujący, który zdobędzie MOBILITY-TICKET ofiary, może odbierać i wstrzykiwać ruch przekaźnikowy oraz zużywać limit ofiary. Problem wynika z nieprawidłowej weryfikacji tożsamości w gałęzi resume.
Oryginalny opis (angielski, źródło NVD)
Coturn is a free open source implementation of TURN and STUN Server. Prior to 4.16.0, dtls_server_input_handler() and create_new_connected_udp_socket() in src/apps/relay/dtls_listener.c retain OpenSSL dtls1_reassemble_fragment() state for a 35-byte fragmented ClientHello declaring a 650,000-byte handshake before cookie validation, allowing an unauthenticated remote sender using fresh UDP tuples to exhaust memory without TURN credentials, a completed handshake, a valid cookie, or source spoofing. This issue is fixed in version 4.16.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

