Une extension malveillante pour navigateur Twitch divulgue les jetons OAuth de près de 31 000 utilisateurs.

Une extension malveillante pour navigateur Twitch, fonctionnant sur plusieurs plateformes, a divulgué les jetons OAuth associés à près de 31 000 utilisateurs à des serveurs proxy exploités par un service de bots commercial russe.
L’extension, nommée « Twitch Enhanced Viewer | JeetBot », indique HISHIMIRO/jeetbot.cc comme développeur et possède les identifiants suivants sur le Chrome Web Store et le Mozilla Firefox Add-Ons Store :
- Chrome – pnhhdhhcadcjfckjhpmjneldiegbojfb – 30 000 utilisateurs (Publié le 26 juin 2025)
- Firefox – twitchenhancedviewer@example.com – 604 utilisateurs (Publié le 7 juillet 2025)
Les deux extensions sont toujours disponibles au téléchargement à l’heure où nous écrivons ces lignes. Leur description indique : « JeetBot est un outil moderne destiné aux streamers et aux spectateurs qui apprécient la qualité, la simplicité d’utilisation et le contrôle », ajoutant qu’il « étend les fonctionnalités de Twitch : diffusion en 1080p pour les régions soumises à des restrictions ».
« Les versions actuelles (v85.x) transmettent le jeton directement en tant que paramètre de requête &auth= lors d’une redirection au niveau réseau vers le proxy de l’opérateur », a déclaré Kush Pandya, chercheur en sécurité des sockets . « Le jeton est transmis pour chaque chaîne regardée par l’utilisateur, à l’exception d’une liste blanche de dix chaînes de streaming russes, dont les sessions sont exemptées de transmission. »
« L’opérateur est un logiciel SaaS commercial de bots Twitch, Kick et VK-Live qui dispose de larges autorisations d’hôte Twitch et relaie des sessions authentifiées en direct via sa propre infrastructure. »
Bien que l’extension prétende offrir une expérience sans publicité et proposer du contenu non verrouillé par région, elle le fait en acheminant les requêtes de listes de lecture vidéo de Twitch vers « usher.ttvnw[.]net » via des serveurs proxy contrôlés par l’opérateur ainsi que le jeton OAuth de l’utilisateur en tant que paramètre de requête « &auth=” ».
Plus précisément, l’extension intègre un code permettant de récupérer le jeton OAuth de Twitch et de l’envoyer au proxy. Ce jeton autorise l’accès au chat, aux messages privés et aux paramètres du compte de l’ utilisateur .
/>
Étant donné que le jeton est placé dans la chaîne de requête de l’URL, il est inscrit en clair dans les journaux de requêtes du serveur proxy. Le mécanisme de redirection par jeton est cependant exclu pour une liste codée en dur de 10 chaînes Twitch, dont la plupart sont des streamers russophones comptant des milliers d’abonnés.
- pch3lk1n (580 000 abonnés)
- fasoollka (361 000 abonnés)
- flamie (132K abonnés)
- dosia (29 abonnés)
- fander (2 abonnés)
- almazer (4 abonnés)
- forzorezor (177 000 abonnés)
- akyuliych (1,1 million d’abonnés)
- lagoda1337 (225 000 abonnés)
- lagoda (77,3 k abonnés)
« Pour chaque canal ne figurant pas dans cette liste, le jeton actif de l’utilisateur est transmis au proxy », a expliqué Pandya. « Les versions précédentes de la v4.x (par exemple, la version 4.8, janvier 2026) allaient plus loin en envoyant le jeton par requête POST à un point de terminaison dédié sur le serveur de l’opérateur, avec des copies de sauvegarde sur deno.dev et deno.net. »
JeetBot se présente comme un « bot puissant pour Twitch, Kickstarter et VK Live, doté de la synthèse vocale, de la traduction automatique et de nombreuses autres fonctionnalités pour améliorer l’interaction avec les spectateurs ». Il revendique plus de 26 000 streamers actifs et un milliard de messages traités. Le pied de page du site indique que l’opérateur est un développeur chypriote nommé Aleksandr Popov. Sur son profil LinkedIn, ce dernier affirme que JeetBot est un projet personnel.
Il semble toutefois que le développeur ait déjà pris des mesures pour résoudre le problème. Une alerte publiée sur la page de documentation de JeetBot indique désormais que la version 85.8.7 de l’extension Firefox corrige le problème et qu’une version équivalente pour Chrome est en cours d’évaluation.
Dans la version précédente, l’extension envoyait le jeton OAuth Twitch de l’utilisateur à nos serveurs proxy pour récupérer les listes de lecture des flux. Un jeton OAuth est une authentification et doit être protégé.
La version 85.8.7 modifie la façon dont les listes de lecture sont récupérées : le jeton OAuth de l’utilisateur n’est plus envoyé à nos serveurs proxy.
Vérifiez la version de votre extension installée et mettez-la à jour vers la version 85.8.7 ou ultérieure. Les installations plus anciennes utilisant l’ancien mécanisme continueront d’envoyer le jeton jusqu’à leur mise à jour.
La documentation recommande également aux utilisateurs de désactiver temporairement l’extension pour interrompre la transmission du jeton si celle-ci n’est pas disponible. Cependant, le développeur précise que la désactivation ou la mise à jour de l’extension n’annule pas les jetons déjà transmis.
Hacker News a contacté Socket et le développeur pour obtenir plus de commentaires et nous mettrons à jour l’article si nous recevons une réponse.
« Environ 31 000 utilisateurs de Chrome et Firefox font transiter leurs jetons de session OAuth Twitch en direct par une infrastructure proxy contrôlée par l’opérateur », a déclaré Socket.
« Un jeton de session OAuth Twitch est un identifiant porteur : quiconque le détient peut agir sur le compte sans le mot de passe ni authentification à deux facteurs, notamment lire et envoyer des messages privés, publier dans le chat et dépenser des points de chaîne. Cette vulnérabilité n’est pas mentionnée dans les fiches produits des deux boutiques. »