Micrologiciel personnalisé - Custom firmware

Le micrologiciel personnalisé , également connu sous le nom de micrologiciel de rechange , est une version non officielle, nouvelle ou modifiée, d'un micrologiciel créé par des tiers sur des appareils tels que des consoles de jeux vidéo et divers types d' appareils intégrés pour fournir de nouvelles fonctionnalités ou déverrouiller des fonctionnalités cachées. Dans la communauté des consoles de jeux vidéo, le terme est souvent écrit en tant que micrologiciel personnalisé ou simplement CFW , faisant référence à une version modifiée du logiciel système d' origine (également connu sous le nom de micrologiciel officiel ou simplement OFW ) à l'intérieur d'une console de jeu vidéo telle que la PlayStation Portable. , PlayStation 3 , PlayStation Vita et Nintendo 3DS . L'installation du micrologiciel personnalisé nécessite généralement le déverrouillage du chargeur de démarrage .

Consoles de jeux vidéo

Les micrologiciels personnalisés permettent souvent aux applications homebrew ou aux sauvegardes d' images ROM de s'exécuter directement dans la console de jeu, contrairement aux micrologiciels officiels, qui n'autorisent généralement que des copies signées ou vendues au détail du logiciel. Étant donné que les micrologiciels personnalisés sont souvent associés au piratage de logiciels , les fabricants de consoles tels que Nintendo et Sony ont déployé des efforts considérables pour bloquer les micrologiciels personnalisés et d'autres appareils et contenus tiers de leurs consoles de jeux.

PlayStation Portable, PlayStation 3 et PlayStation Vita

Le micrologiciel personnalisé est couramment utilisé dans les ordinateurs de poche PlayStation Portable publiés par Sony. Les micrologiciels personnalisés notables incluent M33 par Dark_AleX ainsi que ceux fabriqués par d'autres tels que la série 5.50GEN, Minimum Edition (ME/LME) et PRO.

Un firmware personnalisé est également visible dans la console PlayStation 3 . Seuls les premiers modèles "Fat" et Slim (CECH-20xx jusqu'à CECH-25xx) pour exécuter un firmware personnalisé. Les modèles Slim (CECH-30xx) et Super Slim ne peuvent exécuter que HEN (Homebrew Enabler), qui a des fonctionnalités similaires à un firmware personnalisé.

La PlayStation Vita , a eCFW signifiant firmware personnalisé pour PSP fonctionnant dans l'émulateur PSP de la PS Vita. Ces eCFW incluent ARK, TN-V et plus récemment, Adrenaline, qui comprend plus de fonctionnalités depuis qu'il a été piraté du côté natif. En 2016, une équipe appelée Molecule a publié HENkaku pour PlayStation Vita, qui modifie le firmware de la PS Vita sur la version 3.60, ce qui permet de créer un firmware personnalisé sur la console. L'équipe derrière le HENkaku original a également sorti taiHEN. taiHEN est un framework sur lequel s'exécute la dernière version de HENkaku. C'est un moyen de charger des plugins au niveau du système comme l'utilisateur était habitué sur la PSP, lui permettant de modifier/ajouter des fonctions à sa console. Enso est une vulnérabilité du bootloader de la Vita qui rend HENkaku permanent et permet de s'exécuter sur le boot. La Vita a donc un CFW complet avec HENkaku taiHEN et Enso. Les utilisateurs de 3.60 peuvent également passer à 3.65 sans perdre HENkaku Enso.

Nintendo 3DS

La scène de modding de la Nintendo 3DS implique principalement un custom firmware (logiciel qui patche le firmware officiel "à la volée"), qui nécessite un exploit pour obtenir le contrôle de l'ARM9, le coprocesseur de sécurité de la 3DS, et, accessoirement, des cartouches flash , qui émulez un chariot de jeu original (qui ne peut être utilisé que pour lire des sauvegardes ROM de chariot de jeu intactes). Le CFW le plus utilisé actuellement est Luma3DS, développé par Aurora Wright et TuxSH, qui permet l'installation non signée de la CIA (CTR Importable Archives), comprend des modules de firmware système réécrits open source et la gestion des exceptions pour les développeurs de logiciels homebrew.

D'autres CFW passés et abandonnés comprenaient Gateway (un CFW propriétaire verrouillé sur une cartouche flash via DRM et le premier disponible publiquement), Pasta, RxTools (le premier gratuit et largement utilisé), Cakes CFW (le premier CFW open source, qui utilisait une approche modularisée pour les correctifs et a été l'inspiration pour les suivants), ReiNAND, sur lequel Luma3DS était basé à l'origine, et Corbenik ; à ce jour, le seul firmware personnalisé encore en cours de développement est Luma3DS (anciennement connu sous le nom d'AuReiNAND). Les CFW 3DS s'appuyaient sur "EmuNAND"/"RedNAND", une fonctionnalité qui démarre le système à partir d'un espace non partitionné de la carte SD contenant une copie de la mémoire NAND de la 3DS. Ces EmuNAND pourraient protéger le système 3DS contre le bridage, car le système NAND habituel n'était pas affecté si l'emuNAND ne fonctionnait plus correctement ou était inutilisable. Les EmuNAND pourraient également être mis à jour séparément de la NAND système habituelle, permettant aux utilisateurs d'avoir la dernière version du système sur l'EmuNAND tout en conservant la version vulnérable sur la NAND système ; rendant ainsi possible le jeu en ligne et l' accès au Nintendo eShop sur les versions obsolètes du système 3DS.

Les EmuNAND ont été rendus obsolètes par la sortie d'arm9loaderhax, un exploit ARM9 au démarrage qui permettait aux utilisateurs d'utiliser SysNAND et de le mettre à jour en toute sécurité, car les CFW ont commencé à corriger le code de mise à jour du système d'exploitation afin que les mises à jour officielles ne suppriment pas l'exploit. Cependant, cet exploit nécessitait une rétrogradation vers une version très ancienne du système pour obtenir l'OTP unique de la console, nécessaire à l'installation. Le 19 mai 2017, une nouvelle base d'exploit appelée sighax a été publiée, remplaçant arm9loaderhax et permettant aux utilisateurs d'obtenir un contrôle encore plus précoce du système, permettant l'exécution de code dans le contexte de la bootROM et donc un environnement plus propre, sans rétrogradation ni OTP requis. Boot9Strap, une version conviviale de sighax, a été publiée.

Dans le même temps, un autre exploit bootROM appelé ntrboot a été annoncé, qui permet aux gens d'utiliser une porte dérobée présente dans la bootROM pour obtenir un contrôle total du système sur n'importe quelle console 3DS quelle que soit la version du firmware (car la bootROM ne peut pas être mise à jour), seulement nécessitant une cartouche flash DS modifiée et un aimant. La sortie initiale a eu lieu le 12 août, prenant en charge les cartouches AceKard 2i et R4i Gold 3DS RTS.

Commutateur Nintendo

Image
Image
Pages 11 et 12 de l'acte d'accusation des développeurs de SX OS (Team Xecuter), concernant leurs logiciels utilisés sur Nintendo Switch.

Actuellement, plusieurs firmwares personnalisés pour la console Nintendo Switch existent : Atmosphère, ReiNX et SX OS. Les différences entre eux sont en grande partie sans importance ; Atmosphère reste en développement actif et est un logiciel libre et open-source . ReiNX base une grande partie de son code sur Atmosphère mais avec quelques modifications des composants d'exécution et un chargeur de démarrage différent, tandis que SX OS est une source fermée et payante, mais largement basé sur le code Atmosphère malgré les affirmations contraires.

Nintendo a rendu l'environnement Switch beaucoup plus sécurisé que les consoles précédentes. Malgré cela, il existe des bugs notables qui conduisent à des exploits des utilisateurs. Parmi ceux-ci, le bug de la pile Nvidia Tegra ( CVE - 2018-6242 ) est le plus exploité. Il exploite le mode de récupération (RCM) de l'unité Switch afin de pousser des charges utiles non signées/non vérifiées, accordant à son tour à l'utilisateur l'accès à l'exécution de code arbitraire . Cette vulnérabilité a été davantage exploitée par les utilisateurs de la scène de piratage de Switch pour procéder à la rétro-ingénierie du micrologiciel, ce qui a conduit à deux autres exploits notables : Nereba et Caffeine. Alors que RCM est un exploit matériel, Nereba et Caffeine sont des exploits logiciels et reposent sur le fait que la console est égale ou inférieure à des versions de micrologiciel spécifiques afin d'utiliser les exploits. Le RCM, étant lié au matériel, repose simplement sur le fait que la console est vulnérable à cet exploit particulier et n'a pas d'exigence ou de plage de micrologiciel.

En raison de la divulgation par Nvidia de CVE-2018-6242, Nintendo a été contraint de corriger la vulnérabilité et, fin 2018, a commencé à fabriquer et à distribuer des unités qui ont été corrigées matériellement et ne peuvent pas accéder à la vulnérabilité RCM. Toute unité fabriquée pendant ou après cette période est susceptible d'être matériellement corrigée, y compris le Switch Lite et les nouveaux commutateurs « boîte rouge », et toute unité matériellement corrigée et exécutant un micrologiciel relativement récent ne pourra probablement pas accéder au micrologiciel personnalisé. à ce moment ou à l'avenir en raison de l'environnement logiciel exceptionnellement sécurisé du commutateur.

Android

La pratique consistant à remplacer la partition système du système d' exploitation Android , généralement montée en lecture seule, par une version modifiée d'Android est appelée « flasher une ROM ». La procédure nécessite le déverrouillage du chargeur de démarrage (généralement en exploitant les vulnérabilités du système d'exploitation), n'est généralement pas prise en charge par les fabricants de périphériques et nécessite une certaine expertise. Cependant, depuis environ 2015, plusieurs fabricants, dont LG, Motorola, OnePlus, Google Xiaomi et Sony prennent en charge le déverrouillage du chargeur de démarrage (sauf sur les appareils verrouillés par certains opérateurs). Cela contourne le démarrage sécurisé, sans avoir besoin d'exploits. Les « ROM personnalisées » installées peuvent inclure des fonctionnalités différentes, nécessiter moins d'énergie ou offrir d'autres avantages à l'utilisateur ; les appareils ne recevant plus les mises à jour officielles de la version Android peuvent continuer à être mis à jour.

Autres appareils

Divers autres appareils, tels que les appareils photo numériques , les routeurs sans fil et les téléviseurs intelligents , peuvent également exécuter un micrologiciel personnalisé. Des exemples de ces micrologiciels personnalisés incluent :

  • Cable Hack et Sigma pour décapsuler les modems câble , mais avec une légalité douteuse
  • Firmware qui permet aux lecteurs de DVD d'être sans région
  • SamyGO, firmware modifié pour les téléviseurs intelligents Samsung
  • Voir également

    Les références