Vue normale

Reçu avant avant-hier

Un Pokémon piégé depuis 15 ans dans un Pokéwalker, et l’issue est terrible pour la pauvre bête

Par :Korben
7 avril 2026 à 15:04

Un passionné a tenté de récupérer son Pokémon coincé dans un Pokéwalker, ce petit podomètre vendu avec Pokémon HeartGold sur DS en 2009, après avoir perdu la cartouche de jeu.

Entre reverse engineering du protocole infrarouge et manipulation du générateur de nombres aléatoires, la tentative est bien technique. Et le résultat est plutôt cruel, pour une raison que personne n'avait anticipée…

Un Pokémon sans cartouche, un vrai problème

Le Pokéwalker, pour ceux qui ne s'en souviennent pas, c'était ce petit podomètre vendu avec Pokémon HeartGold et SoulSilver sur Nintendo DS en 2009. Le principe était simple : vous transfériez un Pokémon de votre partie vers cet accessoire, vous le glissiez dans votre poche, et chaque pas comptait pour gagner des points et débloquer des objets.

Le tout communiquait avec la cartouche DS par infrarouge. Sauf que voilà, si vous perdez la cartouche (ce qui arrive plus souvent qu'on ne le croit après 15 ans), votre Pokémon reste coincé dans le Pokéwalker. Pas de cartouche, pas de transfert retour. C'est exactement le problème auquel s'est retrouvé confronté Etchy, un créateur de contenu spécialisé dans Pokémon Gen 4.

Du reverse engineering à l'ancienne

Le travail de fond, c'est Dmitry qui l'avait fait il y a quelques années en décortiquant complètement le Pokéwalker. A l'intérieur : un microcontrôleur Renesas H8, une EEPROM de 64 Ko, un accéléromètre Bosch et un émetteur infrarouge générique. La communication entre la cartouche et le Pokéwalker passe par un protocole IR à 115 200 bauds, et chaque octet est simplement XOR avec 0xAA avant envoi.

Dmitry avait même réussi à exécuter du code arbitraire sur l'appareil en exploitant un débordement de buffer dans la décompression. Etchy s'est appuyé sur tout ce travail pour tenter sa mission de sauvetage. Son idée : créer une nouvelle sauvegarde avec les bons identifiants pour tromper le Pokéwalker.

Le dispositif ne vérifie que la version du jeu (HeartGold ou SoulSilver), la région et les identifiants du dresseur. En manipulant le générateur de nombres aléatoires du jeu, Etchy a réussi à générer une sauvegarde avec des IDs correspondants.

Le fantôme dans la machine

Et ça a marché. En partie. Le Pokéwalker a accepté la connexion et transféré les données du Pokémon. Sauf que le vrai identifiant unique du Pokémon, son PID, celui qui définit ses stats, sa nature, son apparence, n'existe que sur la cartouche d'origine.

Le Pokéwalker ne stocke qu'une version allégée des données : l'espèce, les attaques, l'objet tenu, le genre. Le PID, lui, restait sur la cartouche perdue. Du coup, le Pokémon récupéré n'est qu'une copie incomplète. Ca ressemble à votre Typhlosion, ça porte son nom, mais ce n'est pas vraiment lui. Comme le résume Etchy dans sa vidéo : il n'y a pas de moyen de sauver un Pokémon piégé dans un Pokéwalker.

C'est le genre d'histoire qui parle à tous ceux qui ont grandi avec une DS dans la poche. On a tous eu ce moment où un accessoire, une sauvegarde ou un périphérique finissait au fond d'un tiroir, avec des données qu'on pensait sans importance.

Etchy et Dmitry montrent qu'il y a une vraie communauté prête à passer des heures sur du reverse engineering pour trois octets de données. C'est beau et un peu absurde en même temps. Le plus cruel dans l'histoire, c'est que Nintendo n'avait visiblement pas prévu qu'on puisse perdre sa cartouche tout en gardant le Pokéwalker. Bref quinze ans plus tard, votre Typhlosion attend toujours dans son petit boîtier, et personne ne viendra le chercher.

Source : Hackaday

La Xbox One enfin hackée après 12 ans d'invincibilité

Par :Korben
16 mars 2026 à 11:40

La Xbox One n'a jamais été hackée ! Eh oui, depuis 2013, la console de Microsoft narguait la communauté du reverse engineering pendant que les PlayStation, les Switch et autres 3DS tombaient les unes après les autres. Microsoft la décrivait même comme "le produit le plus sécurisé jamais créé" mdrrrr.

Bon bah c'est fini comme vous vous en doutez car à la conférence RE//verse 2026 à Orlando, Markus "doom" Gaasedelen a réussi à exécuter du code arbitraire sur le boot ROM de la console, autrement dit c'est un hack hardware impossible à corriger.

Du coup, comment on casse un truc réputé incassable ?

Eh bien toute la sécurité de la Xbox One repose sur un minuscule processeur ARM Cortex R4, le Platform Security Processor (PSP), planqué dans un coin du SoC AMD.

Ce PSP contient un boot ROM gravé directement dans le silicium... et c'est le seul composant que Microsoft ne peut pas mettre à jour. L'architecte de la sécu Xbox, Tony Chen, l'avait dit lui-même en 2019 : "le seul bug logiciel dont on ne peut pas se remettre, c'est un bug dans le boot ROM".

Le die shot du SoC Xbox One. Le PSP est planqué tout en bas à droite.

Sauf que Markus n'a pas cherché de bug logiciel, parce y'en a pas. Le code du boot ROM est linéaire, hyper audité, sans la moindre faille. Du coup, il est passé par le hardware avec du voltage glitching.

Le principe c'est de faire s'effondrer brièvement le rail d'alimentation du processeur (en gros, on colle un MOSFET sur le rail et on tire la tension vers le bas pendant 100 à 200 nanosecondes) pour corrompre l'exécution d'une instruction. Et Microsoft avait quand même blindé le truc en prenant soin de ne pas mettre de pin reset accessible, pas d'UART, pas de JTAG, pas de post codes de diagnostic (désactivés par des fusibles), et surtout 37 stalls randomisés qui décalent le timing du boot à chaque démarrage. En gros, c'est comme essayer de crocheter une serrure dans le noir, avec des moufles, et la serrure qui change de position toutes les 2 secondes.

D'ailleurs, c'était la première fois que Markus faisait du glitching de sa vie. Au début, il a galéré sur le mauvais rail d'alimentation (la tension 1.8V, finalement un cul-de-sac) avant de trouver le bon (le North Bridge core). Et là, en balançant ses impulsions de voltage au bon moment, il a réussi à activer les post codes que Microsoft avait désactivés par fusibles. Premier signe que la bête était vulnérable !!!!

Le setup de glitching : oscilloscope, carte mère Xbox One et fils partout.

Ensuite, il a ciblé les opérations memcopy du boot ROM, là où les données contrôlées par l'attaquant transitent dans les registres du processeur. Un glitch bien placé pendant un memcopy, et hop, le pointeur d'instruction du processeur part n'importe où. Résultat : 0x41414141 qui sort sur le bus I2C, la preuve qu'on contrôle l'exécution du boot ROM !

Bon par contre, il était enfermé dans un "user jail", une sandbox ARM avec seulement quelques Ko de code accessible. Et c'est pas si simple d'en sortir.

0x41414141 sur le bus I2C. ROP'd OUT MY POST CODE !

Et là, coup de génie du mec : un double glitch sur le même boot.

Le premier casse la boucle d'initialisation du MPU (la protection mémoire ARM, les 12 régions qui créent les jails), le second hijack le pointeur d'instruction pendant le memcopy.

Combiner les deux sur un seul démarrage, c'est du genre 1 chance sur 100 par glitch, soit environ 1 sur 10 000 pour le combo donc autant dire qu'il faut laisser tourner la machine des centaines de milliers de fois. Mais ça marche !! Avec le MPU désactivé et le pointeur d'instruction sous son contrôle, Markus obtient alors l'exécution de code en mode superviseur, avant même que le boot ROM n'ait vérifié les signatures ou déchiffré quoi que ce soit.

Bingo !! Et les conséquences sont radicales puisque grâce à ce hack, il peut maintenant déchiffrer tous les jeux, les firmwares et les mises à jour passés, présents et futurs.

Il peut aussi dé-pairer les NAND et lecteurs optiques pour la réparation. Et comme c'est gravé dans le silicium, c'est impatchable, comme le Reset Glitch Hack de la 360 à l'époque. Pour l'instant, ça concerne uniquement le modèle Xbox One Fat de 2013.

Ah et petit détail croustillant.... Microsoft avait prévu des moniteurs anti-glitch dans le SoC pour détecter les perturbations de voltage, mais sur les premières révisions ils n'arrivaient pas à les stabiliser, du coup ils les ont désactivés par fusibles. Pas de bol. Après sur les modèles suivants (One S, One X) ils sont activés, mais Markus pense que ses techniques pourraient quand même être adaptées.

Le boot flow du PSP. Le hijack se produit à l'étape 4, avant toute vérification crypto.

Le plus dingue c'est que le hack en version finale ne nécessite que 3 fils soudés sur la carte mère ! Tout le reste, les dizaines de sondes à crochet, l'oscilloscope 4 voies, l'analyseur logique branché sur le bus I2C et les GPIO, c'était juste pour comprendre ce qui se passait.

Et le fait qu'il ait construit un émulateur du boot ROM avec l'aide de l'IA pour étudier le comportement du processeur, je trouve ça encore plus incroyable !

Bref, je vous laisse avec la conf en intégralité pour les plus motivés :

Et voilà comment 12 ans de "IMPOSSIBLE À PIRATER" se termine avec 3 fils soudés et 2 glitches bien placés. Pas mal !

Bravo Markus !

❌