de_Fuse, der Wii U-Open-Source-Modchip, aktualisiert auf v.0.3
Der Open-Source-Wii-U-Modchip rückt näher, mit Update 0.3 in dieser Woche. De_Fuse, ein bahnbrechendes Update für die Wii/Wii U-Szene, wurde vor fast einem Monat von Hacker Shiny Quagsire veröffentlicht. Der einzige Grund, warum ich nicht darüber gesprochen habe, war ehrlich gesagt, dass andere Szene-Websites viel genauer sind als ich, wenn es um Nintendo geht, insbesondere um die älteren Konsolen.
Nichtsdestotrotz ist der Erfolg wichtig genug, ich werde diese neue Version von Shiny Quagsires Code als Gelegenheit nutzen, um über das Projekt zu sprechen.
Was ist de_Fuse für Wii U?
de_Fuse ist eine Hardware-Schwachstelle auf der Wii U, ein Fehler in ihrer OTP* eFuse-Auslesezustandsmaschine. Um es kurz zu machen, der Fehler erlaubt es, mit handelsüblicher Elektronik im Wert von etwa 30 US-Dollar die Wii U vollständig zu hacken. Shiny Quagsires Arbeit daran (sowohl die Software als auch die Hardware) ist Work in Progress, aber 100 % Open Source.
* Der One Time P rogrammable Memory wird irgendwann während des Fabrikprozesses programmiert und kann danach nie mehr geändert werden. Das OTP der Wii U ist viel größer als das der Wii (1 KB verteilt auf 8 Bänke mit jeweils 128 Byte) und enthält eine Auswahl an schreibgeschützten Daten, einschließlich der Verschlüsselungs-/Entschlüsselungsschlüssel der Konsole .
aus der Readme des Projekts:
Um eine eFuse-basierte JTAG-Sperre (und aufgrund anderer Überlegungen) zu berücksichtigen, müssen eFuse-Bits unmittelbar nach NRST in einer Registerdatei gepuffert werden, bevor das interne Zurücksetzen freigegeben werden kann. Die eFuse-Erkennungszustandsmaschine verriegelt mit einer Rate von 4 Bits pro Zyklus direkt vom 27-MHz-XTALCLK. Bei jeder zweiten steigenden Flanke wird ein Byte in die Registerdatei geschrieben, beginnend mit dem niederwertigsten Byte des aktuellen u32.
Ein interner Zähler wird verwendet, um die verbleibenden Bytes zu verfolgen, die in die Registerdatei gelesen werden müssen. Während die eFuse-Registerdatei mit NRST auf Null zurückgesetzt wird, ist der interne Zähler nicht: Durch das Aktivieren von NRST, nachdem N Bytes gelesen wurden, werden beim anschließenden Booten nur 0x400-N Bytes gelesen.
Durch das Aktivieren von NRST kurz bevor das letzte Byte gelesen wurde (1830 Zyklen), lesen alle eFuses vollständig Null, einschließlich der JTAG-Sperrsicherung. Dies ermöglicht eine triviale, unsignierte und unverschlüsselte boot1-Ausführung ohne SEEPROM-Anti-Rollback.
Weitere Einzelheiten finden Sie in der vollständigen Beschreibung des Entwicklers hier . Der vielleicht interessanteste Teil für mich ist, wie der Fehler gefunden wurde, indem ich mich zunächst mit Wii-Schwachstellen befasste und vermutete, dass ähnliche Exploits im Boot-Prozess der Wii U existieren könnten. Auch, wie viel Glück im Spiel war, so der Hacker selbst.
Was ist neu in de_Fuse 0.3
-
boot1.img
überprüft jetzt den BoardConfig CRC32, und wenn er nicht gültig ist, wird DRAM mit Fallback-Standardwerten initialisiert. - PRSHhax-basierte OTP-Dumping-Unterstützung für alle boot1-Versionen hinzugefügt, die auf CDN (prod und dev) verfügbar sind
- Dumping und Wiederherstellung
BOOT1_SLC.RAW
hinzugefügt - Unterstützung für die Wiederherstellung von seeprom.bin hinzugefügt
- Diese Option kann dazu führen, dass Sie OTP nicht über PRSH hax ausgeben können, wenn Sie etwas Dummes tun!
- Ich habe so viele Überprüfungs-/Sicherheitsmaßnahmen wie möglich hinzugefügt, um sicherzustellen, dass PRSH hax nicht gesperrt wird, aber letztendlich liegt es in der Verantwortung des Benutzers,
otp.bin
undseeprom.bin
gesichert und sicher zu halten. - Eine unvollständige Liste von Dingen, die unwiederbringlich aufhören können zu funktionieren, wenn Sie Ihr
seeprom.bin
Backup verlieren und etwas Falsches flashen, enthält:- Das Laufwerk
- Speichert auf USB-Laufwerken
- Unterstützung für die Synchronisierung von SEEPROM-Boot1-Versionen mit NAND nach dem Flashen
BOOT1_SLC.RAW
hinzugefügt- Diese Option erfordert eine Kopie von
otp.bin
von derselben Konsole (und dies wird überprüft).
- Diese Option erfordert eine Kopie von
- Die redNAND-Partitionierung wurde angepasst, um 1 MB freien Speicherplatz am Anfang der SD-Karte für Ancast-Bilder zu platzieren.
- Verschiedene Zuverlässigkeitsverbesserungen
Also, wie hacke ich meine Wii U mit de_Fuse?
Wichtig: Zum jetzigen Zeitpunkt des Projekts ist dies eine sehr frühe Veröffentlichung, und alles, was die Software/Hardware tut, ist, Sie wissen zu lassen, ob alles richtig verkabelt ist. Dies hackt die Wii U noch nicht technisch , obwohl es allen Grund zu der Annahme gibt, dass dank dieses Projekts ein vollwertiger Open-Source-Modchip gleich um die Ecke ist.
Download-Links für die Software, Anweisungen zur erforderlichen Hardware und Bedienungsanleitungen finden Sie hier auf der Release-Seite des Projekts .
In Bezug auf die Hardware benötigen Sie mindestens einen Raspberry Pi Pico und etwas Draht . Verdrahtungsdetails für die Pico-Platine finden Sie hier .
Quelle: Shiny Quagsire