Exploitation de l’interface Web de qBittorrent pour miner de la cryptomonnaie : Découvrez comment résoudre ce problème rapidement !

Les évolutions de qBittorrent

Les fonctionnalités des clients BitTorrent n’ont pas fondamentalement changé au cours des 20 dernières années, mais les développeurs des clients les plus populaires n’ont pas laissé leurs logiciels stagner.

Un bon exemple est l’excellent qBittorrent, un client open source riche en fonctionnalités qui reçoit régulièrement des mises à jour. Comme d’autres clients similaires, qBittorrent peut être trouvé sur GitHub, où l’on peut également trouver son code source et les instructions d’installation.

Récemment, les utilisateurs de la même plateforme ont essayé de comprendre comment l’installation standard de qBittorrent avait soudainement conduit à l’apparition d’un logiciel de minage de cryptomonnaie indésirable sur la même machine.

Proxmox et LXC

Pour ceux qui ne connaissent pas Proxmox VE, il s’agit d’un environnement de machines virtuelles qui devient très utile très rapidement une fois qu’on l’essaie. De plus, il est gratuit pour les simples mortels et, dans la plupart des cas, très facile à installer et à utiliser.

Grâce à divers « scripts d’aide » proposés par tteck sur GitHub (petit échantillon à droite), même les débutants peuvent installer en quelques secondes l’un des nombreux packages logiciels disponibles à l’aide des conteneurs LXC.

Même si tout cela ne fait pas sens, cela n’a pas d’importance. Ceux qui veulent installer qBittorrent, par exemple, peuvent copier et coller une seule ligne de texte dans Proxmox… et c’est tout. Étant donné que tout le processus est presque toujours sans faille, les problèmes des utilisateurs sont très rares, il était donc surprenant d’entendre parler d’une possible infection par un logiciel malveillant récemment.

Découverte du cryptominer

En résumé, un utilisateur de Proxmox a utilisé un script de tteck pour installer qBittorrent, puis un mois plus tard, il a découvert que sa machine était utilisée intensivement par un logiciel de minage de cryptomonnaie connu sous le nom de xmrig. Alors qu’il enquêtait sur le problème, tteck a supprimé le script LXC de qBittorrent par précaution, mais il est rapidement devenu clair que ni Proxmox ni le script de tteck n’avaient quoi que ce soit à voir avec le problème.

Le logiciel indésirable avait en effet été installé de manière malveillante, mais en raison d’une série d’événements évitables, plutôt que d’un piratage de génie.

Lorsqu’une installation de qBittorrent comme celle-ci est terminée et que le logiciel est lancé, l’accès à qBittorrent se fait par le biais d’une interface web accessible depuis la plupart des navigateurs web. Par défaut, qBittorrent utilise le port 8080 et comme de nombreux utilisateurs aiment accéder à leurs clients de torrent depuis des réseaux distants, qBittorrent utilise l’UPnP (Universal Plug and Play) pour automatiser la redirection de port, exposant ainsi l’interface web à Internet.

Avoir cela fonctionnel en un temps record est très agréable, mais cela ne signifie pas que c’est sûr. Pour s’assurer que seul l’opérateur du client peut accéder à l’interface web, qBittorrent permet à l’utilisateur de configurer un nom d’utilisateur et un mot de passe à des fins d’authentification.

Cela signifie généralement que les passants aléatoires devront posséder ces informations d’identification avant de pouvoir causer des dommages. Dans ce cas, le nom d’utilisateur et le mot de passe administrateur par défaut n’ont pas été modifiés, ce qui a permis à un attaquant d’accéder facilement à l’interface web.

L’attaquant a ordonné à qBittorrent d’exécuter un programme externe

Afin de permettre aux utilisateurs d’automatiser diverses tâches liées au téléchargement et à l’organisation de leurs fichiers, qBittorrent dispose d’une fonctionnalité qui peut exécuter automatiquement un programme externe lorsqu’un torrent est ajouté et/ou lorsqu’un torrent est terminé.

Les options ici sont limitées uniquement par l’imagination et les compétences de l’utilisateur, mais malheureusement cela s’applique également à tout attaquant ayant accès à l’interface web du client.

Dans ce cas, l’attaquant a ordonné au client qBittorrent d’exécuter un script de base à la fin d’un torrent. Le script a accédé au domaine http://cdnsrv.in, d’où il a téléchargé un fichier appelé update.sh, puis l’a exécuté. Les conséquences de cela sont expliquées en détail par tteck, mais les principaux points sont : a) le minage non autorisé de cryptomonnaie sur la machine hôte et b) le maintien de l’accès root par authentification de clé SSH.

Facilement évitable

Le nom d’utilisateur administrateur par défaut de qBittorrent est « admin », tandis que le mot de passe par défaut est « adminadmin ». Si ces valeurs par défaut bien connues avaient été modifiées après l’installation, l’attaquant aurait quand même pu trouver l’interface web, mais il n’aurait pas eu d’informations d’identification utiles pour y accéder normalement.

Plus fondamentalement, la possession des bonnes informations d’identification aurait eu une valeur limitée si le client qBittorrent n’avait pas utilisé l’UPnP pour exposer l’interface web en premier lieu. En prenant un pas de recul supplémentaire, si l’UPnP n’avait pas été activé dans le routeur de l’utilisateur, qBittorrent n’aurait pas eu accès à l’UPnP et n’aurait pas pu rediriger les ports ou exposer l’interface à Internet.

En résumé : désactiver l’UPnP dans le routeur et ne l’activer que lorsque sa fonction est entièrement comprise et absolument nécessaire. Ne laissez jamais les mots de passe par défaut inchangés et si quelque chose n’a pas besoin d’être exposé à Internet, ne l’exposez pas inutilement.

Enfin, il convient de mentionner que la réponse de tteck, à un problème qui n’avait rien à voir avec Proxmox ou ses scripts, a été de première classe. Toute personne installant le LXC de qBittorrent à partir d’ici trouvera le mot de passe administrateur par défaut modifié et l’UPnP automatiquement désactivé.

Tout temps gagné peut être consacré à l’installation automatisée de Plex, Tautulli, Emby, Jellyfin, Jellyseerr, Overseerr, Navidrome, Bazarr, Lidarr, Prowlarr, Radarr, Readarr, Sonarr, Tdarr, Whisparr et bien d’autres encore.

Proxmox : un hyperviseur de type 1 open source

Comparta su opinión

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.