Edit très très important: Il est possible de récupérer quelques firmwares sur cette page donc il ne reste plus ensuite qu'à faire les étapes 1, 3, 5 et 6 du tuto (la deuxième est facultative mais cela pourra toujours servir de dumper les Bis Keys). Bien sûre, veuillez tout de même lire le tuto dans son intégralité.
Bonjour,
Je vais vous présenter ici la méthode pour dumper le firmware de votre console, récupérer vos clés (Bis Keys et clés de chiffrement diverses), créé un package avec ChoiDuJour et enfin installer le driver EXFAT. Je vous conseille de lire une fois le tuto au complet et surtout de bien suivre les étapes une par une, dans l'ordre et si une étape ne fonctionne pas, n'essayez pas d'aller plus loin.
Attention: Si vous possédez une Switch patchée, ce tuto ne doit pas être suivi car les manipulations peuvent rendre le démarrage de l'OS impossible (se sont des manipulations de la nand) donc la console pourrait devenir très difficile à utiliser ou à restaurer et sans dump de la nand et des Bis keys alors là c'est carrément impossible. Ceci dit, si vous êtes un aventurier, ce tuto peut tout de même se faire pour mettre le driver EXFAT sur une Switch patchée en 4.1.0 mais vous serez seul responsable d'un brick éventuel, vous êtes prévenu. Pour les Switch équipées de puces SX Core ou SX Lite, utilisez Daybreak au lieu de ChoiDuJourNX et EmmcHaccGen à la place de ChoiDuJour.
Note importante, Je n'expliquerai pas ici comment installer ou utiliser des homebrews ou encore comment lancer des payloads sur la Switch, veuillez consulter la FAQ pour savoir comment faire cela.
Attention: Pour ceux en firmware 1.0, je ne sais pas si cela fonctionnera correctement, voir ce sujet sur Gbatemp pour comprendre pourquoi j'ai ce doute.
Note: Pour mettre à jour/downgrader une console, vous avez cet excellent tuto qui possède quelques points communs avec celui-ci.
Note 2: Pour l'utilisation de ChoiDuJour-NX, utilisé dans le tuto que j'ai indiqué dans la note ci-dessus, voici un petit résumé simple de comment l'utiliser car le tuto contient beaucoup d'infos qui ne seront pas forcément utiles à beaucoup d'entre vous. Il est à noter que l'on peut aussi installer l'EXFAT très simplement via cette méthode, beaucoup plus simplement que via la méthode manuelle qui va être présentée ci-après. Voici le résumé, c'est une réponse que j'avais faite à un membre donc je ne l'ai pas modifiée, n'oubliez pas d'avoir un dump de la nand en cas de soucis; notez également que cette procédure fonctionne aussi avec Daybreak dont l'utilisation est bien plus recommandée maintenant:
S'il n'y a pas l'EXFAT d'installé ne met pas à jour quand la Switch te le proposera car elle récupèrera le dernier firmware au passage donc prends une SD formatée en FAT32, télécharges le même firmware que celui de ta console via cette page (ou un autre supérieur si tu le souhaite ou même inférieur si les Efuses n'ont pas été grillés ou si tu veux downgrader même avec les Efuses grillés), cré un dossier firmware sur la SD, extraits le firmware dans ce dossier, mets le homebrew ChoiDuJour-NX sur la SD ainsi qu'un CFW te permettant de le lancer (peut importe lequel), lances ChoiDuJour-NX, entres dans le dossier "firmware" et choisi l'installation EXFAT du firmware. Ensuite,, redémarres ta console et désactives l'auto-RCM si tu le souhaites car celui-ci se sera activé avec l'installation de la mise à jour, c'est normal.
Pour effectuer ce tuto, vous aurez besoin des éléments suivants:
- Une Switch permettant d'utiliser l'exploit Fusee Gelee.
- Un PC sous Windows.
- Un moyen de relier la Switch au PC via USB (USB 3 à préférer mais l'USB 2 peut également fonctionner).
- Un moyen d'injecter des payloads (voir la FAQ) ainsi qu'un moyen de copier des fichiers sur une micro-SD.
- Une micro-SD donc, d'au moins 1 GO, formatée en FAT32 (si vous n'avez pas déjà les clés pour Hactool) ou en EXFAT si vous n'avez pas besoin de lancer un CFW durant le tuto.
- Le payload Hekate.
- Le logiciel HacDiskMount, le payload Memloader et le logiciel ChoiDuJour, trouvables sur cette page.
- Le payload Lockpick-RCM qui vous permettra de dumper vos clés de déchiffrement pour Hactool et autres dérivés de celui-ci.
- Si vous souhaitez vous simplifier certaines étapes du tuto (et je vous le conseille personnellement mais c'est mon script donc bon...), vous pouvez également utiliser mon script qui contient déjà tout le nécessaire.
1) Première étape:
Avoir un dump de la nand au cas où. Si celui-ci n'a pas été fait, veuillez vous référer à la FAQ pour savoir comment faire.
2) Récupération des clés:
On va utiliser le payload Lockpick-RCM. Ce payload permet de dumper les différentes clés utilisés par Hactool et autres dérivés. Attention, ne pas partager le fichier "prod.keys" obtenu grâce à ce payload car il contient des clés spécifiques à la console comme la tsec_key par exemple. Il suffit donc de lancer le payload et de dumper, le fichier prod.keys se trouvera dans le dossier "switch" de la SD.
Une fois le dump des clés effectués, copiez le fichier "prod.keys" obtenu dans le dossier de ChoiDuJour et renommez-le "keys.txt".
3) Dump du firmware:
Edit très important: Il semblerait que le dump du dossier "Contents/registered" de la partition "SYSTEM" ne soit pas suffisant pour passer le firmware en EXFAT. Pour ceux qui sauront faire, il faut donc extraire la partition "update" d'un XCI contenant la mise à jour de votre firmware avec XCI Explorer (vous obtiendrez un fichier "update.hfs0") et créer les fichiers nécessaires avec ChoiDuJour à l'aide de ce fichier au lieu du dossier "registered" indiqué lors du tuto (la ligne de commande est la même, seul "registered" doit être remplacé par "update.hfs0"). C'est dommage, je pensais vraiment que ma solution fonctionnerai mais non et je ne peux rien ajouter de plus sans me mettre moi-même hors charte.
Pour commencer, il faut mettre en place les fichiers de Memloader sur la SD. Copiez donc le contenu du dossier "sample" de l'archive de Memloader à la racine de la SD et profitez-en pour extraire le fichier "memloader.bin" quelque part, ce fichier est le payload qui sera à injecter. Notez que mon script permet de copier ces fichiers sur la SD pendant la préparation d'une SD (pack Memloader).
Note: Avec mon script, cette étape est même facultative car il contient une fonction qui permet de monter les différentes parties de la mémoire de la Switch (EMMC, Boot0, Boot1 et la micro-SD).
Une fois que tout cela est en place, il faut injecter le payload Memloader et sélectionner l'option "ums_emmc" (mon script permet donc de faire cela en une fois et se sera à chaque fois qu'on utilisera Memloader pour ce tuto, il y aura toujours l'équivalent via mon script donc je ne le préciserai plus).
Maintenant, ouvrez HacDiskMount en tant qu'administrateur, cliquez sur "Files", sur "Open physical drive" et faire un double cliques sur la seule option qui devrait être disponible "Linux UMS disk 0". Vous devriez maintenant voir les différentes partitions de votre Switch.
Faites un double cliques sur la partition "SYSTEM" et une nouvelle fenêtre devrait s'ouvrir. Commencez par entrer les Bis Keys demandées et cliquez sur "Verify". Si la vérification réussi, cliquez sur "Save" et cliquez ensuite sur "Install drivers" (le driver n'est à installer qu'une seule fois car une fois le driver installé sur le PC, il y restera et sera utilisable pour monter les autres partitions). Une fois le driver installé, choisissez une lettre de lecteur, cocher les cases "Read-Only" et "Passthrough zeroes" puis cliquez sur "Mount. Normalement, la partition devrait être montée et accessible en lecture par Windows. Pour avoir accès en écriture, il suffit de ne pas cocher la case "Read-Only" à l'étape précédente mais dans ce cas je déconseille de le faire.
Maintenant, allez dans le disque qui vient d'être monté, entrez dans le dossier "Contents" et copiez le dossier "registered" quelque part sur votre PC, préférablement dans le dossier où se trouve le programme ChoiDuJour dont on se servira un peu plus tard. Vous pouvez également renommer ce dossier si vous le souhaitez mais pour la suite du tuto je vais considérer que le dossier s'appellera "registered".
Note: Avec l'extraction du firmware via un XCI, copiez le fichier "update.hfs0" dans le dossier de ChoiDuJour. Vous pouvez également le renommer si vous le souhaitez mais je considère que le fichier s'appelle toujours "update.hfs0".
Une fois le travail sur la partition terminé, il faut cliquer sur "Unmount" dans HacDiskMount, quitter la fenêtre d'actions de la partition et maintenir le bouton "Power" de la Switch pendant une dizaine de secondes pour l'éteindre. Notez que lors de l'utilisation du payload Memloader, il faut toujours faire un hard reset pour redémarrer la console, après avoir démonté le disque dans HacDiskMount le cas échéant.
Note: Pour l'instant, démontez juste la partition et fermer la fenêtre d'action de celle-ci car on va se resservir de HacDiskMount bientôt donc ne pas éteindre la Switch pour l'instant.
4) Création du package via ChoiDuJour:
Note: Ici on peut utiliser également EmmcHaccGen pour générer se dont on a besoin, l'avantage de ce logiciel est qu'il sait gérer les firmwares supérieurs au firmware 6.1.0. Je ne détaillerai pas plus les commandes pour ce logiciel, ceci dit il est possible de générer assez facilement un package de ce type via mon Ultimate-Switch-Hack-Script
On va commencer par faire un petit point. Dans le dossier contenant le programme "ChoiDuJour.exe", vous devriez avoir un dossier nommé "registered" ou un fichier "update.hfs0" et un fichier nommé "keys.txt". Si tout est bon, passons à la suite.
On va devoir exécuter une ligne de commande pour créer le package via ChoiDuJour. Pour se faire, maintenez la touche "maj" (ou "shift") de votre clavier et faites un clique droit sur le dossier contenant le programme de ChoiDuJour. Cliquez ensuite sur "Ouvrir une fenêtre de commandes ici" et entrez la ligne suivante:
ChoiDujour.exe --keyset="keys.txt" "registered"
Si tout fonctionne bien, vous obtiendrez un nouveau dossier avec les fichiers de votre firmware et vous pourrez donc fermer la fenêtre de la ligne de commande. Le nom du dossier obtenu devra avoir la mention "exfat", par exemple "NX-4.1.0_exfat".
En cas d'erreur, il faut savoir qu'il y a certaines clés dumpée qui ne sont pas gérées par Hactool, c'est pour cela que vous pourriez avoir des erreurs. Dans ce cas, supprimez les clés "encrypted_header_key" et "eticket_rsa_kek" du fichier "keys.txt" (supprimez la ligne complète) et relancez la ligne de commande de ChoiDuJour. Par contre, gardez tout de même la copie originale de votre "prod.keys" car ces clés ne sont pas fausses et pourront peut-être vous servir à un moment ou à un autre.
Note supplémentaire: En fait, si vous avez un message du type "WARN" puis du texte ensuite, le programme indique qu'il ne reconnaît pas une clé en particulier et cela le fait s'arrêter. Du coup, il faut supprimer la ou les clés indiquées du fichier "keys.txt" puis relancer le programme.
Voici les clés nécessaires dans le fichier "keys.txt" pour ChoiDuJour:
master_key_00 = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
master_key_01 = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[... Toutes les Master keys jusqu'au firmware que vous souhaitez décrypter, par exemple pour le firmware 6.2.0 il faudra toutes les master keys jusqu'à la master_key_06]
header_key = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
aes_kek_generation_source = XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
aes_key_generation_source = XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
key_area_key_application_source = XXXXXXXXXXXXXXXXXXXXXXXXXXXX
key_area_key_ocean_source = XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
key_area_key_system_source = XXXXXXXXXXXXXXXXXXXXXXXXXXXX
package2_key_source = XXXXXXXXXXXXXXXXXXXXXXXXXXXX
Note: Grâce à mon script, vous pouvez également créer facilement un package de mise à jour via ChoiDuJour ou EmmcHaccGen grâce à un processus automatisé et bien plus souple que la méthode que je décris ci-dessus.
5) Installation du driver EXFAT:
Courage, c'est bientôt terminé. Retournez dans HacDiskMount et si vous avez bien suivi l'étape 4 sans éteindre ou redémarrer la console entre temps, vous êtes prêt pour la suite. Sinon, retournez à l'étape 4 et refaites la manipulation jusqu'à afficher les différentes partition de l'EMMC de la console.
Note: Dans les fenêtres d'actions des partitions qui vont s'ouvrir dans la suite du tuto, il ne sera pas nécessaire d'entrer de Bis Keys car ces partitions ne sont pas chiffrées.
Faites un double cliques sur la partition "BCPKG2-1-Normal-Main", dans la partie "Restore from file" cliquez sur le bouton "Browse" permettant de sélectionner le fichier ""BCPKG2-1-Normal-Main.bin" à restaurer (c'est celui qui se trouve dans le dossier que vous a créé ChoiDuJour à l'étape précédente) et enfin cliquer sur le bouton "Start" permettant de restaurer la partition. La restauration est très rapide. Quittez la fenêtre d'actions de la partition.
Maintenant, on va faire exactement la même chose qu'à l'étape précédente mais avec la partition "BCPKG2-2-Normal-Sub" et le fichier "BCPKG2-2-Normal-Sub.bin". Puis pareil avec la partition "BCPKG2-3-SafeMode-Main" et le fichier "BCPKG2-3-SafeMode-Main.bin". Et enfin idem avec la partition "BCPKG2-4-SafeMode-Sub" et le fichier "BCPKG2-4-SafeMode-Sub.bin".
Une fois tout cela terminé, on peut enfin quitter HacDiskMount et redémarrer la Switch pour tester la carte SD formatée en EXFAT. Si tout a bien fonctionné, celle-ci devrait être reconnue.
Modifié par shadow256, 17 novembre 2021 - 12:21.