Une nouvelle découverte pourrait bien intéresser la scène underground Nintendo. Le jeu Balatro, dans sa version physique destinée à la première Nintendo Switch, peut désormais être détourné pour servir de véritable lanceur de code grâce à une technique reposant entièrement sur les données de sauvegarde. Baptisé Balatro Switch RCE, ce projet développé par Luminger exploite le fonctionnement particulier du moteur LÖVE utilisé par le jeu. En effet, celui-ci charge certains fichiers depuis les données de sauvegarde avant ceux présents dans les ressources internes du jeu. Il devient ainsi possible de remplacer les fichiers d'entrée originaux, notamment conf.lua et main.lua, par des fichiers personnalisés. Le résultat est particulièrement intéressant : au démarrage de Balatro, le jeu ne lance plus son interface habituelle, mais un environnement autonome permettant notamment d'exécuter du code Lua directement dans le processus du jeu.

Un accès Lua et FTP directement depuis la console
Une fois le lanceur démarré et la connexion réseau établie, plusieurs fonctionnalités sont disponibles :
- Lua REPL via TCP : permet d'exécuter des commandes Lua à distance depuis un ordinateur, sur le port 9026.
- Serveur FTP : permet de consulter et modifier les fichiers du lanceur sur les ports 5000 et 5001.
- Console de diagnostic : affiche les informations de démarrage, les empreintes des fichiers et les événements réseau.
- Journalisation : conserve une trace des connexions, commandes RPC et transferts FTP.
Il s'agit donc d'un véritable environnement de recherche et d'instrumentation permettant d'interagir avec le processus du jeu depuis un PC.

Compatible Switch 1 et Switch 2
L'un des aspects les plus intéressants de cette découverte concerne sa compatibilité avec la Nintendo Switch 2.
Le projet fonctionne sur une Nintendo Switch première génération, mais également sur Switch 2 grâce à la rétrocompatibilité des jeux Switch 1.
La méthode nécessite toutefois une préparation particulière :
- Une cartouche physique de Balatro pour Switch 1.
- Une console Switch 1 déjà hackée pour installer la sauvegarde modifiée à l'aide de JKSV.
Pour une Switch 2 non modifiée, il suffit ensuite de transférer cette sauvegarde via la fonctionnalité officielle de transfert des données de sauvegarde de Nintendo.
Une fois le transfert effectué, la Switch 2 peut démarrer Balatro et charger le lanceur directement depuis la sauvegarde, sans nécessiter de Custom Firmware sur cette dernière.
Les versions testées sont les mises à jour 1.0.1f et 1.0.1o de Balatro sur cartouche Switch 1.
Attention, il ne s'agit pas d'un jailbreak !
Il convient toutefois de bien comprendre la portée de cette découverte. Balatro Switch RCE est une preuve de concept reposant sur une exécution de code en espace utilisateur (Userland). Elle ne donne aucun accès au kernel, ne permet pas de charger des jeux commerciaux, ne contourne pas les protections DRM et ne constitue pas un jailbreak complet de la console. Il s'agit avant tout d'une démonstration technique particulièrement intéressante : une simple sauvegarde peut suffire à remplacer le point d'entrée d'un jeu et à exécuter du code personnalisé dans son propre processus. Le développeur précise également que l'utilisation de cette méthode peut enfreindre les conditions d'utilisation de Nintendo et entraîner un bannissement.
Source : Luminger / Balatro Switch RCE



Mon contenu
Homme




