Nous avons analysé le code source de HelloQuitteX.
HelloQuitteX s’annonce comme une solution simple pour quitter X et migrer vers BlueSky ou Mastodon. Conçue par un collectif comprenant des acteurs comme la Ligue des Droits de l’Homme ou La Quadrature du Net, cette application répond à une demande croissante de souveraineté numérique. Cependant, dès ses débuts, plusieurs limitations techniques ont suscité des interrogations. ZATAZ tente de tirer le vrai du faux !
Quelle belle idée que voilà, proposer aux internautes souhaitant quitter X, ex-Twitter, de passer par un outil qui facilitera le transfert des abonnés et des abonnements sur d’autres réseaux sociaux. L’application, censée automatiser le transfert des abonnés et abonnements d’un réseau à l’autre, a rencontré des retards dès son lancement. Deux jours après son déploiement, ses fonctionnalités n’étaient toujours pas pleinement opérationnelles. Cette précipitation, justifiée par les développeurs comme une nécessité pour respecter des délais stratégiques du 20 janvier, date de l’investiture du 47ème Président des Etats-Unis d’Amérique, a été mal perçue par une partie de ses utilisateurs. Un développement accéléré augmente les risques de bugs, de failles de sécurité, et d’une expérience utilisateur dégradée. La déclaration des créateurs, affirmant que « la phase 1 a été développée dans des temps records« , a alimenté des craintes légitimes quant à la solidité de l’outil.
L’inquiétude est accentuée par les autorisations étendues requises pour utiliser HelloQuitteX. L’application peut accéder à toutes les publications visibles par l’utilisateur, y compris celles provenant de comptes protégés. Elles sont sauvegardées sur le serveur de l’application, le temps de la migration. Si elle est mal contrôlée, cela peut entraîner des abus ou des problèmes de confidentialité. Je n’y crois pas, nous sommes en France, la CNIL n’est jamais bien loin pour remettre dans le droit chemin tout débordement bancal.
Un lancement précipité d’HelloQuitteX a révélé des bugs et des failles, soulevant des questions sur la sécurité des données.
En outre, les utilisateurs se demandent pourquoi l’application est hébergée sur un serveur du CNRS et le site statique migré vers OVH Octopuce. Bien que cette transition s’explique trés certainement par une meilleure bande passante, elle alimente les spéculations sur les motivations sous-jacentes. Était-ce une question d’image pour le CNRS ou une précaution technique essentielle ? Ce manque de transparence contribue à alimenter la méfiance autour d’HelloQuitteX.
Des données personnelles au cœur des débats
HelloQuitteX promet de n’utiliser que le strict nécessaire pour mener à bien la migration des comptes. Cependant, l’opacité perçue autour de la gestion des données inquiète. Lors de l’inscription, les utilisateurs doivent fournir leurs identifiants de connexion à X, ainsi que les identifiants pour les deux autres réseaux sociaux choisis pour la transhumances. Une étape qui, bien que techniquement logique pour l’automatisation, représente un risque significatif. En cas de vulnérabilité ou de faille, ces identifiants pourraient être compromis.
Le code source d’HelloQuitteX, ZATAZ vous l’a analysé plus bas, semble indiquer que seules des données minimales sont collectées. Ces informations seraient détruites immédiatement après la migration. Toutefois, le transfert temporaire de ces données vers un serveur externe, parfois hors d’Europe comme l’indique leur utilisation d’un canal Telegram privé, soulève des questions légitimes. L’utilisation d’un serveur hors du périmètre du RGPD (Règlement général sur la protection des données) pourrait poser problème en cas de violation.
Les partisans d’HelloQuitteX rappellent que le RGPD protège les droits des utilisateurs, notamment leur droit de récupérer et de réutiliser leurs propres données. Cependant, cette législation n’empêche pas les litiges. X pourrait contester l’utilisation de ces données pour alimenter des réseaux sociaux concurrents, invoquant des clauses spécifiques de ses conditions générales d’utilisation.
Fournir ses identifiants pour migrer ses données reste un acte risqué, malgré les garanties affichées.
Les utilisateurs s’interrogent également sur la télémétrie mise en œuvre par HelloQuitteX. Bien que les créateurs affirment qu’aucune donnée personnelle n’est exploitée, la collecte de métriques anonymisées pourrait, si elle est mal encadrée, être utilisée à des fins inattendues. ZATAZ vous montre cette collecte, plus bas.
Une bataille politique et idéologique autour de la migration numérique
Au-delà des aspects techniques, HelloQuitteX reflète des enjeux sociétaux et politiques profonds. L’application s’inscrit dans un contexte de méfiance croissante envers les grandes plateformes technologiques. En facilitant la transition vers des réseaux sociaux alternatifs comme BlueSky ou Mastodon, elle incarne un mouvement pour la décentralisation et la protection des droits numériques.
Cependant, cette initiative n’échappe pas à la polarisation. Pour certains, HelloQuitteX est une réponse salutaire à l’hégémonie d’Elon Musk et à ses décisions controversées concernant X. Pour d’autres, elle soulève des inquiétudes quant à l’indépendance des plateformes vers lesquelles elle oriente les utilisateurs. Mastodon, par exemple, est décentralisé mais nécessite une compréhension technique plus poussée, tandis que BlueSky, bien qu’innovant, reste limité par une adoption encore marginale. Je vous passe les commentaires politiques « gauche/droite » qui ont noyé l’opération et qui n’ont rien à faire dans ce papier.
Les soutiens institutionnels d’HelloQuitteX, notamment la Ligue des Droits de l’Homme et le SNJ-CGT, renforcent son image militante. Mais cette alliance avec des organisations aux agendas variés pourrait également compliquer sa perception par le grand public. Une autre question cruciale reste la réponse des autorités et des entreprises. Si certains ministères semblent avoir adopté HelloQuitteX, leur validation pourrait être vue comme une caution implicite de la fiabilité de l’application. Pourtant, sans une validation explicite de l’ANSSI (Agence nationale de la sécurité des systèmes d’information) et de la CNIL, ces choix restent controversés.
Enfin, la migration encouragée par HelloQuitteX pourrait être interprétée comme un défi juridique et commercial envers X. Elon Musk, connu pour ses positions tranchées, pourrait réagir face à ce qu’il pourrait percevoir comme une ingérence dans l’écosystème de son réseau social. Une confrontation légale pourrait alors redéfinir les règles d’utilisation des données personnelles dans un contexte de migration numérique. Je ne parle même pas du détournement (trés drôle et trés X de la marque Hello Kitty).
Bref, HelloQuitteX offre une opportunité séduisante pour les utilisateurs cherchant à reprendre le contrôle de leur présence en ligne. Toutefois, ses failles techniques, les questions juridiques et les préoccupations liées aux données personnelles invitent à la prudence. Avant d’utiliser l’application, il est essentiel de bien comprendre les risques et les implications. Et au pire, faîtes comme ZATAZ, si vous souhaitez quitter un réseau social, prenez un peu de temps pour comprendre comment le faire avec votre cerveau et vos dix doigts.
Project_id = « goodbyex »
ZATAZ a analysé le code source d’HelloQuitteX diffusé sur GitHub. Ce dépôt contient des dizaines de fichiers provenant de divers endroits, ce qui est nettement moins pratique qu’un bon gros code en Assembleur ou C++ (en fait c’est faux, je suis juste feignant, ils nécessitent également des dépendances tierces). Parmi les fichiers notables, on trouve fr.json dans le dossier « Message ». Ce fichier JSON est essentiel pour la personnalisation et la localisation de l’application HelloQuitteX. Il définit des textes, des modales et des messages interactifs, tout en assurant une migration sécurisée des données entre différents réseaux sociaux.
Nginx.conf est un fichier de configuration pour le serveur web Nginx, conçu pour gérer les connexions et servir une application web basée sur Next.js (port 3000). Il inclut également des paramètres pour HTTPS via un certificat SSL, la gestion des en-têtes, des proxys, et des optimisations pour des uploads volumineux.
Le fichier client-Metadata.json dirige vers un serveur (https://2f66bda139ff0c.lhr.life). Ce fichier de configuration JSON est utilisé dans un système d’authentification OAuth 2.0 pour enregistrer un client, nommé ici « GoodbyeX« , auprès d’un serveur d’autorisation. Ce fichier est probablement lié à des fonctionnalités comme l’authentification des utilisateurs, l’accès à des ressources sécurisées ou l’intégration avec d’autres services via des API. Cependant, si le serveur est mal configuré, il pourrait être exposé à des risques tels que l’usurpation d’identité ou des fuites de données, notamment via des redirections non sécurisées ou des permissions mal gérées.
index.ts (un fichier TypeScript) se trouve dans le dossier « process-imports ». Ce script extrait des données d’importation (comme les fichiers contenant des informations sur les abonnés et abonnements d’un utilisateur), les traite par lots, puis insère ces données dans des tables spécifiques d’une base de données gérée par Supabase. Il gère également la progression des tâches et nettoie les fichiers une fois le traitement terminé.
Un fichier est préoccupant au, premier abord, monitor.ts. Il est localisé dans le dossier « Watcher ». Ce script est une application de surveillance utilisant Supabase, Telegram et Winston pour générer et envoyer des rapports réguliers via un bot Telegram. Selon le code, son objectif est de surveiller l’état d’un système en récupérant des données depuis deux schémas d’une base Supabase :
next-auth.users : suivi des utilisateurs inscrits.
public.import_jobs : surveillance des tâches d’importation.
Le script génère des rapports périodiques (toutes les 30 minutes par défaut). Est-ce inquiétant ? Oui et non. Oui, car il utilise Telegram, ce qui peut poser des questions en termes de sécurité. Non, selon le code, les données récupérées se limitent au nombre total d’utilisateurs, au nombre total de tâches d’importation, et au nombre de tâches ayant échoué.
L’adresse Telegram utilisée dans le script n’est pas explicitement définie dans le code, mais le bot envoie les messages vers un chat identifié par la variable d’environnement TELEGRAM_CHAT_ID, évitant ainsi l’exposition publique de ces informations pour des raisons de sécurité.
Bref, rejoindre Mastodon et BlueSky, les internautes peuvent choisir de le faire eux mêmes, depuis des mois, sans passer par des outils externes.
Abonnez-vous gratuitement à la newsletter de ZATAZ. Rejoignez également notre groupe WhatsApp et nos réseaux sociaux dont Mastodon et BlueSky pour accéder à des informations exclusives, des alertes en temps réel et des conseils pratiques pour protéger vos données.