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-адреса и распаковывает ее, что открывает возможности для использования потенциальных ошибок переполнения памяти с помощью файлов, извлеченных с поддельного сервера.
Исследователь отмечает, что хотя атаки типа MitM часто считаются маловероятными, они могут быть более распространены в регионах с повышенным уровнем наблюдения.
Последняя версия qBittorrent, 5.0.1, устраняет эти риски, поэтому пользователям настоятельно рекомендуется как можно скорее выполнить обновление.