Coturn — это бесплатная реализация TURN и STUN Server с открытым исходным кодом. В версии 4.15.0 аутентифицированный пользователь TURN может неоднократно возобновлять одно распределение из свежих 5-кортежей UDP без завершения передачи обслуживания, когда сервер включает --mobility. mobile_begin_transition() в src/server/ns_turn_server.c отключает тайм-аут выделения каждого нового сеанса и перезаписывает единственную ссылку mobile_pending_resume выделения, оставляя предыдущие ожидающие сеансы недоступными для пути очистки, а copy_auth_parameters() игнорирует сбой inc_quota(). Таким образом, злоумышленник может сохранять неограниченные сеансы на стороне сервера и исчерпать память процесса, даже если настроен --user-quota=1.
Эта проблема исправлена в версии 4.16.0.
Показать оригинальное описание (EN)
Coturn is a free open source implementation of TURN and STUN Server. In 4.15.0, an authenticated TURN user can repeatedly resume one allocation from fresh UDP 5-tuples without completing a handoff when the server enables --mobility. mobile_begin_transition() in src/server/ns_turn_server.c disarms each new session's allocation timeout and overwrites the allocation's single mobile_pending_resume link, leaving earlier pending sessions unreachable by the cleanup path, while copy_auth_parameters() ignores inc_quota() failure. The attacker can therefore retain unbounded server-side sessions and exhaust process memory even when --user-quota=1 is configured. This issue is fixed in version 4.16.0.
Характеристики атаки
Последствия
Строка CVSS v3.1