Основная проблема qBitTorrent, заложенная в него разработчиками (возможно, непреднамеренно) заключается в том, что менеджер загрузки торрент-клиента при установлении соединения с сервером готов принять совершенно любой сертификат безопасности, в том числе подделанный злоумышленником. Такой сертификат позволяет его владельцу вторгаться в процесс обмена данными между торрент-клиентом и удаленным сервером, имея возможность не только анализировать трафик, но и модицифировать его. Причем ни сервер, ни клиент в этом случае подмену не заметят.
SSL/TLS-сертификат удостоверяет подлинность веб-сайта и позволяет использовать зашифрованное соединение между веб-браузером и сервером. Такие сертификаты выдаются доверенными центрами сертификации (Certification Authority; CA). Если сайт не имеет валидного сертификата (выдан CA, срок действия не истек) или сертификата вообще, браузер, как правило, недвусмысленно предупреждает пользователя об опасности посещения этого веб-ресурса.
Как отмечают в Sharp Security, в реализации класса (в смысле типа данных в объектно-ориентированных языках программирования) компонента DownloadManager qBittorrent все ошибки валидации SSL-сертификата целенаправленно игнорировались, следует из коммита 9824d86 в официальный репозиторий проекта на GitHub. Вероятно, в 2010 г. разработчики решили добавить поддержку загрузки по безопасной версии протокола HTTP – HTTPS – и не стали заморачиваться реализацией отсеивания подключений к серверам, не имеющим валидного SSL-сертификата.
Как злоумышленники могли использовать уязвимость
В работе поискового движка qBittorrent задействован интерпретатор языка программирования Python. Если операционной системой пользователя является Microsoft Windows, а Python необходимой версии не установлен, то программа предложит автоматически загрузить и запустить его инсталлятор из Сети. Проблема в том, что URL инсталлятора встроен непосредственно в исходный код торрент-клиент и, таким образом, злоумышленник благодаря поддельному сертификату может этот URL подменить любым другим, в том числе ведущим к вредоносному файлу. В результате пользователь, уверенный, что устанавливает Python, на самом деле запустит на своем компьютере троян или другой тип вируса.
Похожая проблема затрагивает механизмы обновления приложения и RSS-подписок на торренты в qBittorrent. Кроме того, qBittorrent периодически самостоятельно загружает и распаковывает сжатую базу данных GeoIP для геолокации по IP-адресу из источника, прописанного в коде клиента. Подмена указанного разработчиками URL на собственный позволяет злоумышленнику подсунуть клиенту специальным образом модифицированные файлы и добиться переполнения памяти на целевой машине.
В Sharp Security отмечают, что эту уязвимость удобно использовать для слежки за пользователями qBittorrent, не вызывая у них подозрения и не применяя сложных и дорогостоящих в применении методов вроде QUANTUM.
Специалисты Sharp Security рекомендуют использовать альтернативные торрент-клиенты с открытым исходным кодом, которые не имеют и не имели подобных брешей, например, Deluge и Transmission.
Несколько фактов о qBitTorrent
qBitTorrent – это свободный кроссплатформенный клиент файлообменной сети BitTorrent, автором и основным разработчиком которого с 2006 г. является Кристоф Дюме (Christophe Dumez).
Разработчики qBitTorrent позиционируют свой продукт в качестве свободной альтернативы популярнейшему торрент-клиенту uTorrent.
Код торрент-клиента написан на языке программирования C++ и распространяется на условиях лицензии GPLv2+. Основной графический интерфейс программы реализован с использованием библиотеки Qt, веб-интерфейс базируется на Ajax.
Среди функций клиента, обеспечивших ему популярность, помимо кроссплатформенности и современного Qt-интерфейса, также фильтрация IP, интегрированный поисковый движок, поддержка RSS.
В сентябре 2023 г. CNews писал о том, что злоумышленники используют qBittorrent для тайной добычи криптовалюты Monero на компьютерах своих жертв. Внедрение майнеров становится возможным при неправильной настройке торрент-клиента конечным пользователем.
Источник
Нет комментариев