Disponibile un nuovo aggiornamento per NxNandManager, l’applicazione per PC Windows ci permette di copiare il contenuto della console Switch (NAND completa o partizione specifica) da/a un file o un’unità fisica.
Lo strumento supporta la EmuNAND/EmuMMC, anche se solo la variante della partizione (che viene comunque consigliata). Questo può essere ridotto o ingrandito anche oltre i 26 GB, come ad esempio per la partizione USER.
L’applicazione visualizza anche l’ID del dispositivo, l’indirizzo MAC e lo spazio FAT32 disponibile per le partizioni SYSTEM e USER se esiste un set di chiavi valido.
Caratteristiche
- Backup o ripristino di qualsiasi NAND (file o unità) della Switch => full sysNAND, full emuNAND, partizioni di avvio o partizioni utente.
- Crittografa o decrittografa la partizione crittografata nativa (PRODINFO, PRODINFOF, SAFE, SYTEM e USER) utilizzando le chiavi BIS.
- Ridimensiona la tua NAND (solo partizione USER).
- Recupera e visualizza informazioni utili sul file/unità NAND (versione del firmware, ID dispositivo, driver exFat, S/N, ecc..) utilizzando le chiavi BIS.
- I dump suddivisi sono pienamente supportati (backup e ripristino). Tuttavia, il programma non può dividere un dump esistente né può dividere il file di output in ogni caso.
- Opzione per cancellare ID e certificati univoci console (a.k.a in incognito) da PRODINFO.
- Abilita/Disabilita Auto RCM (BOOT0).
- Crea emuNAND (basato su file o partizioni) da qualsiasi immagine NAND (RAWNAND o FULL NAND).
- Funzione “Advanced copy” (zero passthrough, output diviso, output zip, ecc..).
Formato di file supportato
Va notato che il programma non controlla l’estensione del file per rilevare se un file è supportato o meno. Cercherà una firma specifica all’interno dei dati binari (numero magico) quando possibile.
Se il file è completamente crittografato, il programma rileverà il tipo controllando il nome del file (senza estensione) e la dimensione del file.
Pertanto, un singolo file di partizione (crittografato) deve essere chiamato dopo il nome della partizione (SAFE.bin
, SAFE.enc
o SAFE.whatever
funzionerà, SAFE_01.bin
non funzionerà).
Unità supportate
NxNandManager è in grado di rilevare unità fisiche che contengono una NAND (o partizione) valida come unità memloader (strumento per montare la NAND di Nintendo Switch su un computer) o una scheda SD contenente una partizione emuNAND (partizione nascosta SX OS o partizione emuMMC).
Come montare e aprire la NAND su Nintendo Switch
sysNAND o emuNAND (tramite Hekate)
- Avvia Hekate/Nyx (v5.2+) sulla console Switch. Passa su Tools > USB Tools.
- Seleziona “eMMC RAW GPP” (sysNand) o “emu RAW GPP” (emuNAND) per montare la tua NAND sul computer (puoi montare BOOT0/BOOT1 separatamente). Impostare “Read-Only” su OFF se si desidera eseguire operazioni di ripristino.
- Aprire NxNandManager quindi aprire una nuova unità (CTRL + D).
- Selezionare l’unità montata. Ora è possibile eseguire operazioni di backup/ripristino.
emuNAND (partizione)
- Montare la scheda SD contenente la emuNAND sul computer.
- Eseguire NxNandManager quindi aprire una nuova unità (CTRL + D).
- Selezionare l’unità etichettata “FULL NAND”.
emuNAND (file)
- Montare la scheda SD contenente la emuNAND sul computer.
- Eseguire NxNandManager quindi aprire un nuovo file (CTRL + O).
- Aprire il primo file diviso della emuNAND (ovvero
sdmmc:\emuMMC\SD00\eMMC\00
per emuMMC osdmmc:\sxos\emunand\full.00.bin
per la emuNAND del sistema operativo SX).
Tipi di NxStorage
I seguenti tipi sono supportati da NxNandManager:
Tipo | Descrizione | Può essere ripristinato da: |
BOOT0 | Partizione BOOT0 (file singolo) | BOOT0 o FULL NAND (ripristino parziale) |
BOOT1 | Partizione BOOT1 (file singolo) | BOOT1 o FULL NAND (ripristino parziale) |
PRODINFO | Partizione PRODINFO (file singolo). Conosciuto anche come "CAL0" | PRODINFO o FULL NAND, RAWNAND (ripristino parziale) |
PRODINFOF | Partizione PRODINFO (file singolo) | PRODINFOF o FULL NAND, RAWNAND (ripristino parziale) |
BCPKG2-1-Normal-Main | Partizione BCPKG2-1-Normal-Main (file singolo) | BCPKG2-1-Normal-Main o FULL NAND, RAWNAND (ripristino parziale) |
BCPKG2-2-Normal-Sub | Partizione BCPKG2-2-Normal-Sub partition (file singolo) | BCPKG2-2-Normal-Sub o FULL NAND, RAWNAND (ripristino parziale) |
BCPKG2-3-SafeMode-Main | Partizione BCPKG2-3-SafeMode-Main (file singolo) | BCPKG2-3-SafeMode-Main o FULL NAND, RAWNAND (ripristino parziale) |
BCPKG2-4-SafeMode-Sub | Partizione BCPKG2-4-SafeMode-Sub (file singolo) | BCPKG2-4-SafeMode-Sub o FULL NAND, RAWNAND (ripristino parziale) |
BCPKG2-5-Repair-Main | Partizione BCPKG2-5-Repair-Main (file singolo) | BCPKG2-5-Repair-Main o FULL NAND, RAWNAND (ripristino parziale) |
BCPKG2-6-Repair-Sub | Partizione BCPKG2-6-Repair-Sub (file singolo) | BCPKG2-6-Repair-Sub partition o FULL NAND, RAWNAND (ripristino parziale) |
SAFE | Partizione SAFE (file singolo) | SAFE o FULL NAND, RAWNAND (ripristino parziale) |
SYSTEM | Partizione SYSTEM (file singolo) | SYSTEM o FULL NAND, RAWNAND (ripristino parziale) |
USER | Partizione USER (file singolo) | USER o FULL NAND, RAWNAND (ripristino parziale) |
RAWNAND | RAWNAND contiene: - GPT (partition table) - PRODINFO - PRODINFOF - BCPKG2-1-Normal-Main - BCPKG2-2-Normal-Sub - BCPKG2-3-SafeMode-Main - BCPKG2-4-SafeMode-Sub - BCPKG2-5-Repair-Main - BCPKG2-6-Repair-Sub - SAFE - SYSTEM - USER - GPT backup | RAWNAND o FULL NAND o qualsiasi partizione valida (ripristino parziale) |
FULL NAND | FULL NAND contiene - BOOT0 - BOOT1 - GPT (partition table) - PRODINFO - PRODINFOF - BCPKG2-1-Normal-Main - BCPKG2-2-Normal-Sub - BCPKG2-3-SafeMode-Main - BCPKG2-4-SafeMode-Sub - BCPKG2-5-Repair-Main - BCPKG2-6-Repair-Sub - SAFE - SYSTEM - USER - GPT backup | FULL NAND o RAWNAND (ripristino parziale) o qualsiasi partizione valida (ripristino parziale) |
Quanto tempo richiede il backup o il ripristino di NAND?
Ovviamente, le prestazioni dipendono fortemente dalle limitazioni hardware e dall’unità. Ad esempio, se si eseguono operazioni di backup/ripristino su di un’unità montata tramite “memloader”, la velocità di trasferimento sarà molto bassa, a causa delle limitazioni del memloader.
Detto questo, la velocità di trasferimento verrà ridotta se si sceglie di crittografare o decrittografare i dati. La convalida dell’integrità dei dati (hash MD5) può influire anche sulla velocità di trasferimento.
Compatibilità
[stextbox id=’info’]Nota: Tutti i dump realizzati con Hekate sono supportati da NxNandManager (e viceversa).[/stextbox]
NxNandManager supporta anche i dump suddivisi, come ad esempio i dump della NAND di SX OS (emu).
I nomi dei file divisi dovrebbero essere:
basename[00->99].(bin|.*)
o basename[0->9].(bin|.*)
o basename.[0->∝]
Imposta il primo file diviso come input.
Utilizzo CLI
NxNandManager.exe [--list] -i inputFilename|\\.\PhysicalDriveX [-o outputFilename|\\.\PhysicalDriveX] [-part=nxPartitionName] [--info] [--enable_autoRCM] [--disable_autoRCM] [--incognito] [-user_resize=n] [Flags]
Argomenti | Descrizione |
-i | Percorso del file di input o dell'unità fisica. L'input deve essere un tipo NxStorage valido (RAWNAND, FULL NAND, BOOT0, BOOT1, SYSTEM, ecc..). |
-o | Percorso del file di output o dell'unità fisica. Se l'output è un NxStorage valido, il programma ripristinerà l'output dall'input. |
-part= | Partizioni da copiare (se possibile, applicare sia in input che in output). Utilizzare un elenco separato da virgola (",") per fornire più partizioni. I valori possibili sono PRODINFO, PRODINFOF, SAFE, SYSTEM, USER, BCPKG2-2-Normal-Sub, BCPKG2-3-SafeMode-Main, ecc.. (vedi --info) È possibile utilizzare "-part=RAWNAND" per scaricare RAWNAND dal tipo di input FULL NAND |
-d | Decifrare il contenuto (-keyset obbligatorio). Vale solo per RAWNAND, FULL NAND, PRODINFO, PRODINFOF, SAFE, SYSTEM & USER. |
-e | Crittografa il contenuto (-keyset obbligatorio). Vale solo per RAWNAND, FULL NAND, PRODINFO, PRODINFOF, SAFE, SYSTEM & USER. |
-keyset | Percorso di un file contenente le chiavi bis. |
-user_resize= | Dimensioni in Mb per la nuova partizione USER in uscita. Si applica solo al tipo di input RAWNAND o FULL NAND. Utilizzare il flag FORMAT_USER per formattare la partizione durante la copia GPT e FAT dell'UTENTE verranno modificati. output (-o) deve essere un nuovo file. |
--gui | Avvia interfaccia utente grafica (opzionale). |
--info | Visualizza informazioni su input/output (dipende dal tipo di NAND): Tipo NAND, partizioni, crittografia, stato autoRCM ... ... maggiori informazioni quando viene fornito il -keyset: firmware ver., S/N, ID dispositivo, ecc... |
--list | Elenca le unità fisiche compatibili` |
--incognito | Cancella tutti gli ID e certificati univoci della console da CAL0 (a.k.a in incognito). Applica solo alla partizione RAWNAND o PRODINFO di tipo input. |
--enable_autoRCM | Abilita autoRCM. -i deve puntare ad un file/unità BOOT0 valido. |
--disable_autoRCM | Disabilita autoRCM. -i deve puntare ad un file/unità BOOT0 valido. |
Flag | Descrizione |
BYPASS_MD5SUM | Utilizzato per bypassare tutte le verifiche md5. Dump/Restore è più veloce ma meno sicuro. |
FORCE | Il programma non richiederà mai la conferma dell'utente. |
FORMAT_USER | Per formattare la partizione USER (l'argomento -user_resize è obbligatorio) |
Esempi
Scarica la NAND completa su file
-
- Da disco fisico (per prima cosa è necessario montare NX eMMC con memloader (tramite TegraRcmGUI per esempio):
.\NxNandManager.exe -i \\.\PhysicalDrive3 -o "C:\Users\Public\NAND dump\rawnand.bin"
- Dal file di dump esistente: .
\NxNandManager.exe -i "C:\Users\Public\NAND dump\rawnand.bin" -o D:\rawnand2.bin
- Da disco fisico (per prima cosa è necessario montare NX eMMC con memloader (tramite TegraRcmGUI per esempio):
Eseguire il dump di partizioni specifiche su file
- Eseguire il dump della partizione SYSTEM dall’unità fisica:
.\NxNandManager.exe -i \\.\PhysicalDrive3 -o "C:\Users\Public\NAND dump\SYSTEM.bin" -part=SYSTEM
- Estrarre la partizione PRODINFOF dal file di dump esistente:
.\NxNandManager.exe -i "C:\Users\Public\NAND dump\rawnand.bin" -o D:\PRODINFOF.bin -part=PRODINFOF
Ripristina dump NAND
- Ripristina l’intera memoria NAND grezza sull’unità fisica:
.\NxNandManager.exe -i "C:\Users\Public\NAND dump\rawnand.bin" -o \\.\PhysicalDrive3
- Ripristina la memoria NAND raw splittata in unità fisica:
.\NxNandManager.exe -i "C:\Users\Public\NAND dump\full00.bin" -o \\.\PhysicalDrive3
- Ripristina la partizione specifica sull’unità fisica: .
\NxNandManager.exe -i "C:\Users\Public\NAND dump\rawnand.bin" -o \\.\PhysicalDrive3 -part=PRODINFO
oppure.\NxNandManager.exe -i "C:\Users\Public\NAND dump\PRODINFO" -o \\.\PhysicalDrive3 -part=PRODINFO
Copia la partizione da file a file rawNand
- Copia la partizione specifica dal file rawNand:
.\NxNandManager.exe -i "C:\Users\Public\NAND dump\rawnand.bin" -o "C:\Users\Public\NAND dump\rawnand2.bin" -part=BCPKG2-1-Normal-Main
- Copia la partizione specifica dal file di partizione:
.\NxNandManager.exe -i "C:\Users\Public\NAND dump\BCPKG2-1-Normal-Main" -o "C:\Users\Public\NAND dump\rawnand2.bin" -part=BCPKG2-1-Normal-Main
Decodifica/crittografia NAND (AES-XTS)
NxNandManager può decrittografare o crittografare il file/l’unità NAND (rawnand o file di partizione crittografato “PRODINFO”, “SAFE”, “SYSTEM”, ecc..).
[stextbox id=’info’]Nota: È necessario fornire un file keyset contenente biskeys.[/stextbox]
Utilizzare l’argomento -d
per decrittografare, -e
per crittografare.
Le chiavi possono essere fornite dall’argomento -keyset
al nome file keyset. Il programma può analizzare i file keyset creati con biskeydump o lockpick:
BIS Key 0 (crypt): <16-byte hex key>
BIS Key 0 (tweak): <16-byte hex key>
...
o
bis_key_00 = <32-byte hex key>
bis_key_01 = <32-byte hex key>
...
Quando vengono forniti argomenti -keyset
e --info
, il programma può anche recuperare alcune informazioni utili, come la versione del firmware, il driver exFat, l’ultimo orario di avvio, ecc…
Esempi
Decifrare la rawnand completa:
NxNandManager.exe -i rawnand.bin -o rawnand.dec -d -keyset keys.dat
Decifrare il file a partizione singola:
NxNandManager.exe -i PRODINFO -o PRODINFO.dec -d -keyset keys.dat
Crittografa file a partizione singola:
NxNandManager.exe -i PRODINFO.dec -o PRODINFO.enc -e -keyset keys.dat
Decifrare e ripristinare un singolo file di partizione sull’unità fisica:
NxNandManager.exe -i PRODINFO.dec -o \\.\PhysicalDrive3 -part=PRODINFO -e -keyset keys.dat
Crittografa e ripristina la rawnand completa:
NxNandManager.exe -i rawnand.dec -o \\.\PhysicalDrive3 -e -keyset keys.dat
Changelog
- Aggiunto supporto per
BOOT0
su unità Mariko (impedisce l’attivazione di autoRCM per Mariko). - Aggiunto supporto per il rilevamento del firmware per 10.1.0 e 10.1.1 (CHN).
- Corretto un bug causato da nullptr durante la creazione di un emunando basato su Raw da FULL NAND.
- Corretto l’errore di segmentazione nel distruttore NxHandle.
- Corretto un bug che si verificava quando mancavano alcune chiavi bis nel file keyset.
- L’handle del file di output ora viene liberato correttamente dopo la copia.
GUI
- Implementazione del ridimensionamento dell’interfaccia utente (molte grazie a
Chrscool8
per il suo contributo). - Ora puoi chiudere un file/unità aperta dal menu ‘File’ (per rilasciare l’handle del file).
CLI
- Nuova opzione
--crypto_check
: Convalida la crittografia per un determinato file keyset (-keyset
) e input (-i
). - Corretto un bug durante la visualizzazione del tempo rimanente.
- La crittografia/decrittografia per NAND COMPLETA è stata interrotta, corretta.
[stextbox id=’info’]Nota: NxNandManager.exe
(x64) ora viene compilato staticamente per sbarazzarsi di tutte queste DLL.[/stextbox]
Download: NxNandManager v4.1 (64 bit)
Download: NxNandManager v4.1 (32 bit – solo CLI)
Download: Source code NxNandManager v4.1
Fonte: gbatemp.net