1 points par GN⁺ 2025-06-18 | 1 commentaires | Partager sur WhatsApp
  • En cherchant la cause de la lenteur des téléchargements d’images ISO Linux, l’auteur a constaté que plusieurs trackers BitTorrent avaient disparu et a testé combien de clients reviendraient en réenregistrant un domaine de tracker mort
  • La cible était udp://open.demonii.si:1337/announce ; après avoir acheté le domaine .si sur Dynadot et l’avoir relié à un VPS, il a lancé opentracker sur le port 1337
  • Avant même d’activer le tracker, des requêtes affluaient déjà vers le port UDP 1337, et environ une heure plus tard, environ 1,73 million de torrents et 3,15 millions de pairs ont été observés
  • Les statistiques incluaient peers 3,155,701, seeds 1,342,504, completed 244,224, UDP overall 58,843,612, montrant que d’anciennes URL de tracker restent encore présentes dans la configuration de nombreux clients
  • Il n’est pas certain qu’exploiter uniquement une infrastructure de tracker, sans publicité ni fourniture de fichiers .torrent, constitue une incitation à la violation du droit d’auteur, mais l’auteur a coupé le VPS et supprimé le domaine, inquiet des traces laissées par le paiement par carte bancaire

Expérience d’enregistrement d’un domaine de tracker mort

  • Dans l’onglet Trackers de qBittorrent, l’auteur a constaté que plusieurs trackers étaient indiqués comme host down ou pointaient vers des domaines inutilisés
  • Dans BitTorrent, le tracker est un composant essentiel qui indique les autres pairs susceptibles de participer au torrent
  • Cette architecture laisse un point de centralisation dans le protocole BitTorrent
    • si le tracker n’est plus maintenu ou passe hors ligne, il devient difficile de trouver des pairs via cette route
  • Il existe comme alternative le Mainline DHT, mais cette approche a aussi ses limites
    • elle dépend de bootstrap nodes
    • elle est vulnérable aux attaques Sybil
    • dans le torrent téléchargé par l’auteur, le DHT non plus n’a pas réussi à trouver de pairs

Restauration de open.demonii.si et résultats d’observation

  • L’auteur a enregistré le domaine inutilisé udp://open.demonii.si:1337/announce
    • le domaine a été acheté chez Dynadot
    • un VPS a été préparé, puis le domaine a été associé à ce VPS
  • Le logiciel de tracker utilisé était opentracker
    • sur Ubuntu 24.04, gcc-14, g++-14, build-essential, zlib1g-dev ont été installés
    • libowfat a été compilé d’abord, puis opentracker
    • opentracker -p 1337 -P 1337 a été exécuté via une unité systemd
  • Avant même le démarrage d’opentracker, un trafic massif arrivait déjà sur le port UDP 1337
  • Environ une heure plus tard, les statistiques de http://open.demonii.si:1337/stats?mode=everything ont confirmé des connexions à grande échelle
    • torrents : count_mutex 1,735,538, count_iterator 1,735,523
    • peers : 3,155,701
    • seeds : 1,342,504
    • completed : 244,224
    • TCP accept 21,532, announce 20,219, scrape 263
    • UDP overall 58,843,612, connect 18,321,703, announce 33,160,261, scrape 3,211,543, missmatch 4,116,689

Risques juridiques et fin de l’expérience

  • L’aspect juridique reste flou
    • dans des affaires comme The Pirate Bay, la mise en avant de films populaires, la vente de publicité et la fourniture de fichiers .torrent ont été considérées comme des preuves d’incitation à la violation du droit d’auteur
    • le fait d’exploiter uniquement une infrastructure de tracker sans publicité semble plus difficile à qualifier juridiquement comme incitation
    • des torrents librement distribués comme des torrents protégés par le droit d’auteur peuvent tous utiliser ce tracker
  • Le fait d’avoir payé le domaine par carte bancaire restait une source d’inquiétude ; l’auteur a donc arrêté le VPS et supprimé le domaine
    • après l’expérience, le domaine open.demonii.si est redevenu disponible à l’enregistrement

1 commentaires

 
GN⁺ 2025-06-18
Avis sur Hacker News
  • Si l’on ne fait pas réellement héberger le tracker, mais qu’on se contente de regarder les connexions entrantes, je ne vois pas pourquoi ce devrait être illégal
    Même si l’on exploite un tracker, il est difficile de considérer que le tracker lui-même est illégal. Héberger quelque chose comme opentrackr ressemble à héberger un moteur de recherche ; l’essentiel tient à la manière dont on répond aux demandes légales de retrait et à l’intention que révèle l’infrastructure autour du tracker. Un tracker est un logiciel serveur de coordination assez simple ; ce serait étrange que cela soit illégal en soi

    • « Est-ce légal ? » n’est pas une question très utile. La meilleure question est de savoir quelle est la probabilité d’être poursuivi en justice. Dans une action civile, indépendamment de la légalité réelle, si vous attirez l’attention, vous pouvez vous faire harceler par des avocats
    • Si vous aidez quelqu’un à commettre un crime tout en sachant qu’il le fait, c’est généralement traité de manière assez proche du fait de commettre directement ce crime. En droit fédéral américain, il existe des dispositions comme 18 USC 2a https://www.law.cornell.edu/uscode/text/18/2
      Le fait que le logiciel en cours d’exécution soit « simple » ne constitue pas une défense contre un acte illégal, par exemple aider quelqu’un à commettre un crime. Aux États-Unis, il existe quelques clauses d’exonération liées à Internet et au droit d’auteur qui pourraient faire que ce ne soit pas un crime, mais ce n’est probablement pas le cas, et je ne suis pas juriste. Quand on entend « aider quelqu’un à commettre un crime », il vaut mieux partir du principe que « c’est probablement aussi un crime en soi »
    • N’est-ce pas parce que les industries de la musique et du cinéma détestaient le P2P en général ? Dans les années 2000, l’élan qui devait faire du P2P le web distribué de nouvelle génération a été pratiquement tué
      Il est peut-être temps d’y revenir. Au final, ce n’est qu’une question de savoir comment imposer les DRM, et il existe aujourd’hui beaucoup de façons de régler les questions de licence ; le secteur n’a donc pas vraiment besoin de s’en préoccuper autant
    • L’auteur du billet original a effectivement hébergé le tracker
      « Ensuite, j’ai démarré le tracker. Environ une heure plus tard, il était monté en flèche jusqu’à 1,7 million de torrents distincts répartis sur 3,1 millions de pairs ! »
    • Ce n’est pas un avis juridique, mais cela peut être légal comme illégal
      Si vous ne répondez pas aux demandes de retrait, vous vous rapprochez probablement de l’illégalité ; si vous y répondez en mettant les hachages sur liste noire, vous avez de bonnes chances d’être globalement tranquille. Bien sûr, cela dépend de la juridiction et de la manière dont le fait d’associer des hachages à des IP:PORT est considéré : distribution, complicité, ou autre. L’affaire TPB peut servir d’exemple. Je connais quelqu’un qui a exploité un assez gros tracker pendant quelques années ; quand une demande de retrait arrivait, il ajoutait le hachage concerné à la liste noire, et jusqu’ici il ne lui est rien arrivé
  • Les clients BitTorrent sont tellement variés, et beaucoup d’implémentations sont écrites dans des langages non sûrs, que je me demande s’il ne serait pas possible d’attaquer certains clients via un tracker malveillant
    Si un tracker envoie des données mal formées, il ne serait pas surprenant que certains clients se comportent mal

    • La plupart des clients torrent que les gens utilisent, même si ce n’est pas tous, ne sont en réalité que des wrappers autour de libtorrent, et libtorrent est bien testé et a déjà été audité
    • J’ai écrit un client de loisir, et je pense que la réponse est oui. Il reçoit des entrées provenant de serveurs qu’on ne contrôle pas et interagit aussi pas mal avec le système de fichiers
      Même avec un langage à sûreté mémoire, il est difficile de créer un client qui fonctionne correctement ; l’implémenter correctement en C ou en C++ ne peut qu’être assez ardu
    • Transmission a eu une faille d’exécution de code à distance (CVE-2018-5702) qui permettait à un attaquant d’exécuter des commandes arbitraires via du DNS rebinding. L’exploitation de trackers peut clairement être un vecteur d’attaque réel
    • Les données sont encodées en bencode, il s’agit donc d’un format au niveau des octets. Les trackers malveillants connus injectent généralement quelque chose, par exemple en ajoutant à tous les fichiers PDF connus une charge utile visant l’OS du client
      L’API liée à announce est assez facile à implémenter, mais il est difficile d’affirmer qu’elle a été implémentée dans un environnement de tests par fuzzing. Par exemple, Transmission a connu plusieurs vulnérabilités au fil des ans, et je ne connais pas bien les autres implémentations de clients
    • C’est possible, mais peu probable. Le protocole est relativement simple, et les clients existants ont déjà été exposés à d’énormes volumes d’entrées non fiables
  • J’ai un jour exploité très brièvement un tracker privé pour explorer le visionnage de vidéos à plusieurs en P2P
    C’était du niveau jouet, donc je n’ai pas vraiment étudié en profondeur le fonctionnement des trackers, et j’utilisais le tracker Rust Aquatic. Sur demande, ils ont même gentiment ajouté la prise en charge de webtorrent https://github.com/greatest-ape/aquatic
    Un tracker sait-il ce qu’il suit ? Existe-t-il des tentatives pour organiser la mise en relation des pairs sans que le tracker connaisse le contenu ?
    Intuitivement, les gens semblent chercher des pairs à partir d’un certain hachage/magnet, et le magnet à lui seul suffit, sans qu’il soit nécessaire d’inclure des informations d’identification. Bien sûr, je sais que de nombreux liens magnet contiennent une description lisible par un humain. Un tracker pourrait tenter de télécharger ce hachage auprès des pairs pour obtenir les informations du torrent, mais s’il ne le télécharge pas lui-même, il me semble difficile de savoir réellement ce qu’est le torrent et ce qu’il contient
    Cette compréhension est-elle correcte ? Quelle part d’un lien magnet est essentielle à la mise en relation ? Un tracker peut-il ignorer les champs lisibles par un humain ou les bloquer à l’entrée pour se bander les yeux ?

    • Un tracker ne manipule que le hachage d’information du torrent. Pas de nom, pas de description, pas de liste de contenus, rien
      Si l’on prend opentracker, le logiciel choisi dans le billet original, il peut fonctionner aussi bien en mode liste blanche qu’en mode liste noire. Le premier cas est évident, et le second autorise tous les hachages sauf ceux qui figurent sur liste noire. Les trackers publics comme torrent.eu ou opentrackr.org fonctionnent toujours en mode liste noire, afin que n’importe qui puisse se rassembler autour de presque n’importe quel contenu
    • Un tracker sait ce qu’il suit. J’ai exploité autrefois un tracker de séries TV, et il suivait le ratio upload/download de tous les utilisateurs
  • Il existe ici une liste maîtresse de trackers mise à jour quotidiennement ; on devrait donc pouvoir y trouver d’autres trackers morts https://github.com/ngosang/trackerslist

  • Autrement dit, cela signifie qu’on peut DDoS n’importe quelle IP pour le seul coût de l’enregistrement d’un domaine et de la publication de certains enregistrements DNS

    • Est-ce vraiment si grave que ça ?
      Les clients BitTorrent que j’ai utilisés se comportaient plutôt correctement, et reculaient d’au moins 60 secondes environ pour chaque tracker injoignable. Même si l’on achetait un domaine de tracker mort pour le faire pointer vers l’IP de quelqu’un d’autre, si ce service n’écoute pas sur le port auquel les clients essaient de se connecter, et même si le port correspond par hasard, s’il ne parle pas BitTorrent, j’ai du mal à imaginer qu’un million de clients BitTorrent essayant de se connecter puissent poser un si gros problème
    • L’intervalle d’annonce des clients ordinaires est assez long. En général, autour de 30 minutes. Cela dit, avec 3 millions de pairs, cela fait quand même du trafic
    • Le plus nuisible, c’est qu’on peut rediriger vers une adresse IP résidentielle toutes les notifications DMCA envoyées par des ayants droit agressifs. Peu importe la légalité de l’exploitation du tracker, le FAI coupera simplement le compte
    • L’auteur veut-il dire qu’en théorie, tout le trafic peut être redirigé vers une IP quelconque à DDoS ? Je n’y avais jamais pensé, mais avec 3 millions de pairs, c’est clairement effrayant
  • C’est similaire à ce qui s’est passé lorsque Cloudflare a récupéré l’adresse IP 1.1.1.1. Dès son activation, ils ont vu un trafic énorme, parce que beaucoup de gens pointaient vers cette adresse dans leurs scripts

    • Comment ont-ils obtenu cette adresse ?
  • Ma première pensée a été : combien de clients BitTorrent ont du code de parsing vulnérable ?
    Une personne malveillante pourrait-elle enregistrer le domaine et infecter des clients ?

    • Cela me fait penser au roman « Invisible Armies » de Jon Evans, et au « bug »/backdoor qui se trouvait dans un logiciel P2P. Son auteur s’en est servi pour prendre le contrôle des machines
    • Je ne pense pas vraiment. Le tracker est une toute petite partie de l’ensemble de BitTorrent, et sert essentiellement seulement à ce que le client obtienne une liste de pairs
      En gros, le client envoie un appel HTTP au tracker et reçoit une réponse. Ce qui me vient rapidement à l’esprit, c’est de renvoyer du bencode malformé pour provoquer un épuisement mémoire dans des clients écrits par des débutants. Comme cible d’attaque, le protocole pair à pair et des variantes comme uTP sont bien plus intéressants, et il n’est même pas nécessaire d’héberger un tracker pour cela. Il suffit d’obtenir des IP de pairs via un tracker ou la DHT, de s’y connecter, puis de mener l’attaque voulue
    • utorrent v2.1 est encore utilisé par beaucoup trop de gens, et il est clairement exploitable
  • C’est simple. Il suffit d’enregistrer le domaine dans des pays comme la Russie, la Chine ou l’Iran, et d’héberger le site chez Alibaba
    Qu’ils essaient d’envoyer leur paperasse juridique en Russie ou en Chine. Ça se passera sûrement très bien

    • Exact. La solution pour mener des activités illégales sur Internet, c’est simplement d’enregistrer son domaine en « Russie, Chine, Iran ou dans un pays du même genre »
      Il faudrait aussi informer TOR de cette découverte. On peut désormais fermer le darknet et tout déplacer en Chine
  • Pourquoi ne pas transférer vers un autre tracker public ? Comme ça, on n’héberge rien, et si l’on reçoit une lettre juridique, on leur dit de parler au tracker public

    • De l’extérieur, il est impossible de faire la différence, et au final on se fait quand même poursuivre
  • Je ne suis pas juriste, mais d’après ce que je comprends, exploiter un tracker neutre vis-à-vis du contenu est légal aux États-Unis
    Dans d’autres juridictions, ce n’est évidemment pas forcément le cas, le VPS peut se trouver dans une autre juridiction, et le TLD .si relève clairement d’une autre juridiction

    • En cherchant, j’ai trouvé au moins un tracker fermé par les forces de l’ordre américaines : EliteTorrents [2005] https://www.latimes.com/archives/la-xpm-2005-may-26-fi-torre...
      Il y en a probablement eu d’autres. Il y a certainement eu davantage d’affaires civiles intentées par la MPAA et d’autres pour obtenir des dommages et intérêts. Aux États-Unis, la preuve peut être un peu plus difficile à établir, mais je suis assez convaincu qu’un tracker dont la majeure partie du contenu référencé est protégé par le droit d’auteur peut aussi être fermé aux États-Unis
    • Le VPS est celui mentionné dans l’article, https://cockbox.org/, qui est indiqué comme étant basé en Moldavie
    • Il existait autrefois un grand tracker public qui tournait en .si, et il était largement utilisé en Slovénie, pays d’origine du .si
      Presque toute personne ayant eu une vie en ligne en Slovénie au cours des 20 dernières années le connaissait ou l’avait utilisé. Et ce tracker n’a pas disparu à cause d’un avis juridique