Закрытие «дыры» в торрент-приложениях спасло миллионы ПК от превращения в «зомби»

Интернет Безопасность Пользователю
мобильная версия
, Текст: Сергей Попсулин
Компания BitTorrent призналась, что наделавшая много шума уязвимость с IP-спуфингом уже была устранена в обновлениях uTorrent, BitTorrent и BitTorrent Sync в начале августа 2015 г. Уязвимость позволяла использовать миллионы ПК с торрент-клиентами для совершения DDoS-атак.

Устранение ошибки

Американская компания BitTorrent устранила ошибку в своем программном обеспечении, позволяющую использовать компьютеры пользователей торрентов для организации атак типа «отказ в обслуживании» (Distributed Denial of Service — DDoS). Об этом в блоге компании сообщил вице-президент по коммуникациям Кристиан Эверил (Christian Averill).

Местонахождение уязвимости

Уязвимость содержалась в библиотеке libuTP, предназначенной для регулирования скорости соединения при возникновении заторов трафика. Она является частью транспортного протокола и используется во всех флагманских продуктах BitTorrent — торрент-клиентах µTorrent и BitTorrent, а также в приложении для синхронизации файлов BitTorrent Sync. Библиотека libuTP делает работу торрент-клиентов эффективной в домашних сетях.

Суть уязвимости

Суть уязвимости заключается в отсутствии механизмов защиты от IP-спуфинга — вида хакерских атак, когда IP-адрес атакующего заменяется на IP-адрес жертвы.

Используя уязвимость, злоумышленник (Attacker на приведенной ниже схеме) отправляет в торрент-клиент на ПК пользователей (Amplifiers) запрос на инициализацию пирингового соединения. Однако в сообщении IP-адрес инициализатора заменен на IP-адрес компьютера, на который необходимо совершить атаку.

Схема работы DDoS-атаки через торрент-клиенты


Торрент-клиенты, получая запрос, пытаются установить соединение, но уже с компьютером жертвы (Victim на схеме), так как именно его IP-адрес был указан в сообщении в качестве источника. Когда торрент-клиент не дожидается ответа с целевого IP-адреса, он еще несколько раз отправляет запрос перед тем, как полностью прекратить попытку соединения. Кроме того, клиенты устроены таким образом, что они отправляют большее количество данных в ответном сообщении.

Все это позволяет хакеру увеличить поступающий на атакуемый узел объем трафика, хотя сам он такой же объем трафика не отправляет, а отсылает лишь один начальный пакет для инициализации всего процесса.

Суть исправления

Разработчики из компании BitTorrent модифицировали библиотеку libuTP таким образом, чтобы при отсутствии ответа с целевого IP-адреса соединение прерывалось, и повторные запросы не отправлялись. Таким образом, они практически до нуля снизили результативность атак с помощью IP-спуфинга, хотя эти атаки на пользователей торрент-клиентов по-прежнему могут совершаться (но смысла от них не будет).

Ошибка устранена в следующих версиях приложений: uTorrent 3.4.4 40911, BitTorrent 7.9.5 40912 и BitTorrent Sync 2.1.3. Все они были выпущены 4 августа 2015 г., то есть примерно за две недели до того, как исследователи опубликовали доклад.

По словам Кристиана Эверила, компании об уязвимости исследователи сообщили намного раньше, что позволило своевременно выпустить обновление. Представитель BitTorrent добавил, что компания не зафиксировала ни одной атаки с использованием найденной уязвимости.