qBittorrent исправил ошибку, которая позволяла злоумышленникам совершать MitM-атаки на пользователей в течение 14 лет.

qBittorrent исправил ошибку, которая позволяла злоумышленникам совершать MitM-атаки на пользователей в течение 14 лет.

В приложении qBittorrent была устранена ошибка, связанная с удаленным выполнением кода. Причиной этой ошибки была невозможность проверки сертификатов SSL/TLS в DownloadManager — компоненте, который управляет загрузками в приложении.

Ошибка была обнаружена и зафиксирована 6 апреля 2010 года. Однако, спустя более 14 лет, она была исправлена в последнем выпуске — версии 5.0.1, выпущенной 28 октября 2024 года.

qBittorrent — это бесплатный клиент с открытым исходным кодом, предназначенный для загрузки и обмена файлами по протоколу BitTorrent. Его кроссплатформенность, IP-фильтрация, интегрированная поисковая система, поддержка RSS-каналов и современный интерфейс на основе Qt сделали его особенно популярным.

Однако, как отметил исследователь безопасности Sharp Security в своём блоге, команда исправила эту проблему, не проинформировав должным образом пользователей и не присвоив ей статус CVE.

Одна проблема, множество рисков

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

Как объясняет исследователь безопасности, в течение 14 лет и 6 месяцев, начиная с 6 апреля 2010 года, когда была создана фиксация 9824d86, класс DownloadManager в qBittorrent игнорировал все ошибки проверки SSL-сертификатов, которые возникали на различных платформах.

Поведение по умолчанию было изменено на проверку 12 октября 2024 года с фиксацией 3d9e971. Первый исправленный выпуск — версия 5.0.1, выпущенная два дня назад.

SSL-сертификаты обеспечивают безопасное подключение пользователей к законным серверам, удостоверяя, что сертификат сервера является подлинным и ему доверяет Центр сертификации (CA). Однако, когда эта проверка не выполняется, любой сервер, притворяющийся легитимным, может перехватывать, изменять или добавлять данные в поток, и qBittorrent будет доверять этим данным.

Sharp Security выделяет четыре основных риска, связанных с этой проблемой:

  • Когда Python недоступен в Windows, qBittorrent предлагает пользователю установить его по жестко заданному URL-адресу, который ведет к исполняемому файлу Python. Из-за отсутствия проверки сертификата злоумышленник, перехватывающий этот запрос, может заменить ответ с URL на вредоносный установщик Python, способный выполнять RCE (Remote Code Execution).
  • qBittorrent проверяет наличие обновлений, извлекая XML-канал из жестко заданного URL-адреса, а затем анализируя его в поисках ссылки для скачивания новой версии. Без проверки SSL злоумышленник может подменить вредоносную ссылку на обновление в ленте, предлагая пользователю загрузить вредоносные полезные файлы.
  • Менеджер загрузки qBittorrent также используется для RSS-каналов, что позволяет злоумышленникам перехватывать и изменять содержимое RSS-канала, внедряя вредоносные URL-адреса, которые могут быть выданы за безопасные торрент-ссылки.
  • qBittorrent автоматически загружает сжатую базу данных GeoIP с жестко заданного URL-адреса и распаковывает ее, что открывает возможности для использования потенциальных ошибок переполнения памяти с помощью файлов, извлеченных с поддельного сервера.
Запуск калькулятора из qBittorrent в качестве демонстрации
Запуск калькулятора из qBittorrent в качестве демонстрации

Исследователь отмечает, что хотя атаки типа MitM часто считаются маловероятными, они могут быть более распространены в регионах с повышенным уровнем наблюдения.

Последняя версия qBittorrent, 5.0.1, устраняет эти риски, поэтому пользователям настоятельно рекомендуется как можно скорее выполнить обновление.

36
9
3
1
57 комментариев

Ну такое на самом деле, для проведения подобной атаки нужно, чтобы злоумышленник находился с тобой в одной и той же сети. Ну и RCE когда клиент устанавливает Python? Я на самом деле впервые узнаю, что ему нужен Python, впрочем я пользуюсь только магнитиками, и загрузкой по-очереди. Плагины всякие не использую.

14

Комментарий недоступен

4
1

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

18

Или юторренты старых версий

6
1
1
1

Как на нее накатить темную тему на винде?

1

Я пользуюсь. Лучший клиент)

2