Популярный торрент-клиент 14 лет позволял заражать ПК пользователя по вине разработчиков

Developers have successfully addressed a significant vulnerability in the widely-used torrent client qBittorrent, which had the potential to enable Man-In-The-Middle (MITM) attacks against users. This flaw, reported by Bleeping Computer, had been present in the software since April 6, 2010, and remained unpatched until the release of version 5.0.1 on October 28, 2024. For over 14 years, this peer-to-peer file-sharing tool could have been exploited by malicious actors to infect users with malware.

Interestingly, the developers of qBittorrent resolved this critical issue quietly, without issuing any warnings to users or documenting the vulnerability in widely recognized vulnerability databases, a common practice in software development.

SSL Certificate Validation Oversight

The vulnerability, identified by experts at Sharp Security, affects the DownloadManager component of qBittorrent, which is responsible for various tasks related to data retrieval from the internet. This includes fetching search results through its built-in engine, automatically downloading .torrent files, and retrieving favicons and RSS subscriptions. However, the DownloadManager is not utilized for downloading the actual files exchanged among users via the BitTorrent protocol.

The core issue lies in the fact that the DownloadManager is designed to accept any security certificate when establishing a connection with a server, including those forged by attackers. Such a certificate grants the attacker the ability to intercept and manipulate data exchanges between the torrent client and the remote server, all without detection by either party.

SSL/TLS certificates are essential for verifying the authenticity of websites and facilitating encrypted connections between web browsers and servers. These certificates are issued by trusted Certification Authorities (CAs). Typically, if a site lacks a valid certificate or has an expired one, browsers will alert users to the potential dangers of visiting that site.

Sharp Security’s findings indicate that the validation errors in the SSL certificate handling within the DownloadManager class were intentionally ignored, as evidenced by commit 9824d86 in the project’s official GitHub repository. It appears that in 2010, the developers aimed to add support for secure HTTP (HTTPS) downloads but neglected to implement checks for connections to servers lacking valid SSL certificates.

Exploitation of the Vulnerability

The qBittorrent search engine utilizes a Python interpreter. If the user’s operating system is Microsoft Windows and the required version of Python is not installed, the program prompts the user to download and run the installer from the internet. The concern arises from the fact that the URL for the installer is hardcoded into the torrent client’s source code. Consequently, an attacker, armed with a forged certificate, could substitute this URL with any other, potentially leading to a malicious file. As a result, a user believing they are installing Python could inadvertently execute a trojan or other malware.

Similar vulnerabilities exist within the application’s update mechanisms and RSS subscription functionalities. Additionally, qBittorrent periodically downloads and unpacks a compressed GeoIP database for IP geolocation from a specified source in the client’s code. By substituting the developer-specified URL with their own, an attacker could inject specially crafted files into the client, potentially causing memory overflow on the target machine.

Sharp Security emphasizes that this vulnerability can be exploited for user surveillance without raising suspicion or employing complex and costly methods like QUANTUM.

Experts recommend considering alternative open-source torrent clients that do not have such vulnerabilities, such as Deluge and Transmission.

Interesting Facts About qBittorrent

qBittorrent is a free, cross-platform BitTorrent client, developed primarily by Christophe Dumez since 2006. The developers position their product as a free alternative to the popular torrent client uTorrent.

The torrent client is written in C++ and is distributed under the GPLv2+ license. Its main graphical interface is built using the Qt library, while the web interface relies on Ajax.

Among the features that have contributed to its popularity are cross-platform compatibility, a modern Qt interface, IP filtering, an integrated search engine, and RSS support.

In September 2023, CNews reported that attackers were exploiting qBittorrent to secretly mine Monero cryptocurrency on victims’ computers, a scenario made possible by improper user configuration of the torrent client.

TrendTechie
Популярный торрент-клиент 14 лет позволял заражать ПК пользователя по вине разработчиков