Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierFlux principal

ByeByeDPI - Le "VPN" qui contourne la censure sans rien chiffrer

Par : Korben
6 novembre 2025 à 15:00

Si vous êtes sous Android, voici une application qui est une imposture technique complète et qui bizarrement vous permet de contourner la censure parfois mieux qu’avec un vrai VPN.

Je vous explique comment ça marche, en fait, ByeByeDPI , c’est une app Android qui utilise ByeDPI localement sur votre téléphone afin de rediriger tout le trafic à travers elle. ByeDPI, si vous ne connaissez pas encore, c’est un proxy qui intercepte les paquets réseau et applique des techniques de désynchronisation afin de contourner tout ce qui est système de deep packet inspection.

Pour rappel, le deep packet inspection (DPI), c’est une techno que le gouvernement et les fournisseurs d’accès internet utilisent pour inspecter le contenu de vos paquets réseau. Donc ça n’analyse pas juste les entête de vos paquets mais également leur contenu. C’est ce qui permet par exemple à certains FAI de ralentir Netflix ou Youtube pour économiser un peu de bande passante.

En fait, tout l’astuce de cette app, c’est qu’elle détourne l’interface VPN d’Android pour rediriger le trafic vers elle-même. Quand vous l’activez en mode VPN, Android va créer une interface TUN (un tunnel virtuel), et envoyer tout le trafic réseau dedans. Normalement, un VPN classique chiffrerait le trafic et l’enverrait vers un serveur VPN distant. Mais BybDPI, lui, intercepte le trafic, le modifie légèrement pour tromper l’ennemi et le renvoie directement sur le net. Comme ça, tout reste en local, il n’y a pas de chiffrement supplémentaire ni de tunnel externe.

C’est donc vraiment un détournement pur et simple de l’API VPNServices d’Android. ByeByeDPI faire croire à Android qu’il est un VPN tout à fait classique, alors qu’en fait il effectue juste une fragmentation et une manipulation de paquets en local.

Voici les techniques qu’il utilise :

Technique 1 : Fragmentation de paquets.

Quand vous tapez par exemple “facebook.com”, votre navigateur envoie un paquet TCP qui contient une requête HTTP avec “Host: facebook.com” dans les headers. Le DPI inspecte alors ce paquet, voit “facebook.com”, et bloque ça.

ByeByeDPI découpe ce paquet en morceaux plus petits comme ça un fragment contient juste “face”, l’autre contient “book.com”. Et comme le DPI reçoit les fragments séparément, il ne reconnaît pas le mot interdit et le laisse passer. Le serveur de destination reçoit alors les deux fragments, les réassemble, et traite la requête normalement.

Technique 2 : Manipulation du TTL (Time-To-Live).

Chaque paquet réseau a un compteur TTL qui se décrémente à chaque routeur traversé. Quand TTL atteint zéro, le paquet meurt. ByeByeDPI envoie de faux paquets avec un TTL trop bas pour atteindre le serveur final, mais assez haut pour atteindre le DPI. Le DPI alors voit ces faux paquets, pense que la connexion échoue ou est corrompue, et laisse passer les vrais paquets qui suivent.

Technique 3 : Désynchronisation.

ByeByeDPI peut injecter des paquets avec des numéros de séquence TCP incorrects, ou des checksums invalides, pour embrouiller le DPI. Ces paquets sont ignorés par le serveur de destination, mais le DPI les traite comme légitimes et autorise la connexion.

Toutes ces techniques exploitent une vraie faiblesse fondamentale du DPI qui doit analyser des milliards de paquets par seconde. Comme il ne peut pas faire d’analyse approfondie sans ralentir massivement le réseau, il doit faire des compromis. Il inspecte donc uniquement tout ce qui est patterns évidents, et les signatures connues… donc si vous fragmentez bizarrement vos paquets, ou si vous envoyez des paquets malformés, le DPI est totalement perdu.

Et le truc fou, c’est que ByeByeDPI fait tout ça SANS chiffrer votre trafic. Votre connexion reste en clair donc votre FAI peut toujours voir votre IP, votre destination, et tout. Mais le système de censure, lui, ne voit que des paquets bizarres et les laisse passer.

Voilà donc comment en simulant une connexion pourrie, on peut contourner de la censure.

L’app propose 2 modes : VPN et Proxy.

En mode VPN, ByeByeDPI utilise l’API VpnService d’Android pour intercepter tout le trafic du téléphone. C’est transparent et toutes vos apps passent par le proxy sans configuration. Le trafic est redirigé via hev-socks5-tunnel , une bibliothèque qui crée un tunnel SOCKS5 local, puis envoyé vers ByeDPI qui applique les techniques de désynchronisation.

En mode Proxy, ByeByeDPI tourne comme un serveur SOCKS5 local sur 127.0.0.1:1080. Vous devez alors configurer manuellement vos apps pour utiliser ce proxy. C’est très utile si vous voulez combiner ByeByeDPI avec d’autres outils, genre AdGuard. Vous lancez ByeByeDPI en mode proxy, vous configurez AdGuard pour utiliser le proxy SOCKS5, et vous avez à la fois le blocage pub et du contournement DPI.

L’app supporte aussi le split tunneling. Vous pouvez créer une whitelist (seules certaines apps passent par ByeByeDPI) ou une blacklist (toutes les apps sauf certaines). C’est important sur Android TV/BOX où l’Ethernet peut planter si tout le trafic passe par un VPN. Là, vous mettez juste YouTube dans la whitelist, le reste du système utilise la connexion normale.

Cette app est née en Russie, où le DPI est massivement déployé depuis 2019 avec le système TSPU (Technical Means for Countering Threats). Comme la Russie bloque des sites avec une combinaison de blocage IP + DNS + DPI, les VPN classiques sont de plus en plus détectés et bloqués. Mais ByeByeDPI, lui, passe sous les radars parce qu’il ne ressemble PAS à un VPN. Il ressemble à du trafic normal avec des problèmes de connexion.

Le développeur original de ByeDPI, c’est ValdikSS , le créateur de GoodbyeDPI pour Windows et ByeDPI c’est le portage Linux/Android de ce même concept. ByeByeDPI quand à lui est un wrapper Android qui rend tout ça utilisable sans avoir à se palucher de la ligne de commande.

Évidemment, ByeByeDPI ne vous protège pas contre la surveillance puisque votre FAI voit toujours tout et un gouvernement peut toujours logger vos connexions. Cette app contourne juste les blocage DPI, mais ne vous rend pas anonyme pour autant, donc si c’est de l’anonymat que vous voulez, utilisez Tor ! Et si vous voulez du vrai chiffrement, utilisez un VPN comme NordVPN (lien affilié). Par contre, si vous voulez juste accéder à un site bloqué par DPI, ByeByeDPI suffira.

Merci à Letsar pour le partage.

Scramjet - Le missiles anti-censure du lycéen

Par : Korben
20 septembre 2025 à 10:23

Si vous êtes comme moi, que vous êtes parent et que vous pensez que le contrôle parental de votre box internet protège Junior des méchants sites du web, hé bien j’ai une mauvaise nouvelle. Car pendant que vous réglez minutieusement vos filtres, des ados développent des proxys web tellement sophistiqués que même les admins réseau en sueur n’arrivent plus à suivre.

Prenez Scramjet par exemple… c’est le dernier né de cette course à l’armement, et c’est vraiment bien fichu. Développé par Toshit pendant le Hack Club Summer of Making , Scramjet n’est pas juste un énième proxy pour regarder YouTube en cours de maths. Non non, c’est un véritable système d’interception basé sur JavaScript et WebAssembly qui réécrit le code des sites web à la volée.

Cela signifie que le proxy intercepte littéralement le JavaScript des sites, le modifie en temps réel pour contourner les restrictions, puis vous le sert tout chaud sans blocage. Techniquement, c’est brillant, je trouve.

Scramjet est en réalité le successeur officiel d’ Ultraviolet , un autre proxy que vous avez peut-être croisé si vous traînez dans les forums étudiants, mais celui-ci est désormais considéré comme obsolète. Pour sa part, Scramjet est encore maintenu, beaucoup plus moderne et surtout, son architecture est plus robuste. Il fonctionne déjà avec Google, YouTube, Discord, Reddit et quelques autres site. je l’ai testé avec mon site, ça passe aussi, même si c’est pas encore parfait. En tout cas, ça progresse vite.

Au temps jadis, où j’étais encore étudiant, on utilisait des proxys tout moisis qui affichaient les sites sans style et plantaient à la moindre iframe. Et aujourd’hui, des gamins développent des outils en WebAssembly et utilisent des Service Workers. MercuryWorkshop , le collectif derrière Scramjet, a en tout cas créé un outil technique impressionnant qui rivalise même avec certaines solutions commerciales.

Alors comment ça marche ?

Et bien au lieu de simplement faire du proxy classique (je demande la page pour toi et je te la renvoie), Scramjet intercepte TOUT. Les requêtes JavaScript, les WebSockets, les workers, même les tentatives de détection de proxy. Le code source montre qu’ils utilisent Rust pour compiler en WebAssembly les parties critiques, ce qui donne une performance de furieux. Tout se passe via un mini-navigateur dans votre navigateur qui traduit tout en temps réel pour éviter la détection.

L’installation est ridiculement simple comparée à Ultraviolet. Un pnpm install, un pnpm build, et hop, vous avez votre proxy qui tourne en local. Les développeurs ont même pensé aux noobs avec une UI basique pour tester. Bon, elle est moche, mais c’est pas le but. Le but c’est de bypasser les restrictions, pas de gagner un prix de design. Vous pouvez tester la démo ici !

On a donc des écoles et des entreprises qui dépensent des fortunes en solutions de filtrage web telles que Fortinet, Sophos, tous ces gros machins qui coûtent un bras et promettent de “protéger” les utilisateurs. Et en face, on a des ados brillants qui développent des contre-mesures en quelques mois pendant leurs vacances d’été. C’est beau !

Surtout que ce genre d’outil peut également servir dans des pays où l’information est vraiment censurée.

Bref, Scramjet c’est un super outil, open source, documenté, et accessible à tous et si vous voulez tester (pour la science, évidemment), le code est sur GitHub . Mais attention, l’utiliser pour contourner les règles de votre école ou entreprise, c’est à vos risques et périls.

Moi je vous ai rien dit, je fais juste de la veille tech…

Merci à Lilian pour le partage !

❌
❌