CVE-2026-68554
NiskieCVSS 2.3Streszczenie
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.
Ocena ryzyka
Atakujący może manipulować kluczowymi parametrami sesji TURN, co może prowadzić do nieautoryzowanego dostępu, naruszenia integralności lub ominięcia kontroli bezpieczeństwa.
Rekomendacja
Zaktualizuj Coturn do wersji 4.15.0 lub nowszej. Jeśli to możliwe, wdróż TLS/DTLS, aby zapobiec modyfikacjom w tranzycie.
Oryginalny opis (angielski, źródło NVD)
Coturn is a free open source implementation of TURN and STUN Server. Prior to 4.15.0, an on-path attacker can append attributes after MESSAGE-INTEGRITY to an authenticated STUN request on plain UDP or TCP, adjust the STUN header length, and recompute the unkeyed FINGERPRINT while the original HMAC remains valid because it covers only the message prefix. Server-side parsing in src/server/ns_turn_server.c continues past MESSAGE-INTEGRITY through handle_turn_allocate(), handle_turn_create_permission(), handle_turn_refresh(), and handle_turn_command(), allowing trailing LIFETIME, XOR-PEER-ADDRESS, or ORIGIN attributes to override allocation lifetime, inject a permission, or bypass the origin check. TLS and DTLS deployments prevent this in-transit modification. This issue is fixed in version 4.15.0.

