В Signal кнопка отбоя могла не сработать, даже когда пользователь пытался завершить разговор. Критическая ошибка в библиотеке RingRTC позволяла другому участнику звонка помешать отключению соединения. В результате микрофон потенциально оставался активным после попытки положить трубку, а в некоторых условиях мог сохраниться и видеопоток.
Уязвимость CVE-2026-113380 обнародовали 20 октября 2026 года и оценили в 9,3 балла из 10 по CVSS 4.0, присвоив критический уровень опасности. Проблема затрагивала все версии RingRTC до 2.72.0. Библиотека отвечает за голосовые и видеозвонки в Signal и работает поверх WebRTC, технологии передачи звука и изображения через интернет.
Причина кроется в очереди событий, через которую RingRTC управляет состоянием разговора. Злоумышленник, уже участвующий в звонке, мог заполнить очередь многочисленными запросами и затормозить обработку команды завершения связи. Из-за переполнения очередь переставала вовремя пропускать сигнал отключения, а программа могла не закрыть соединение и связанные с ним аудиоканалы.
Для атаки недостаточно просто узнать номер телефона или отправить сообщение. Потенциальному нарушителю необходимо находиться на другом конце активного звонка и создать нагрузку на механизм обработки событий. При успешной эксплуатации собеседник мог решить, что разговор окончен, хотя звук продолжал передаваться. Возможность сохранить видеоканал указана в описании ошибки как предполагаемая.
Разработчики Signal исправили механизм завершения вызовов в RingRTC 2.72.0. Теперь запрос на отключение учитывается отдельно от перегруженной очереди событий. Дополнительно код ограничивает ожидание остановки процесса пятью секундами, чтобы зависший обработчик не удерживал соединение бесконечно. Изменения затронули сразу несколько компонентов библиотеки.
Исправленную RingRTC выпустили ещё в сентябре, примерно за месяц до публичного раскрытия проблемы. По истории Signal Desktop, новая библиотека попала в компьютерное приложение в том же месяце. Однако точные даты появления исправления во всех версиях Signal для Android и iOS остаются неясными. Поэтому номер уязвимой версии самого мессенджера пока нельзя уверенно назвать для каждой платформы.
На GitHub опубликовали концептуальный пример на Python, показывающий, как переполненная очередь может задержать завершение вызова. Демонстрация объясняет механизм сбоя, но не доказывает успешную прослушку реальных пользователей. Публичных сообщений о подтверждённых атаках с применением CVE-2026-113380 пока нет, и в каталоге активно эксплуатируемых уязвимостей CISA запись отсутствует.
Ошибка не затрагивала алгоритмы сквозного шифрования и не давала доступа к истории переписки или паролям. Ранее подключённые устройства уже позволяли получать переписку из защищённых мессенджеров без взлома криптографии, хотя нынешняя проблема связана с другим механизмом. Пользователям Signal рекомендовано установить доступные обновления на телефонах и компьютерах.
