Zum Inhalt springen

ReSwitched-Team macht Projekte öffentlich

Nintendo Switch , , , , ,

Das ReSwitched-Team hat sich heute nach einigen Monaten Abwesenheit zurückgemeldet. So macht man die eigenen Projekte öffentlich und präsentiert ROhan, einen Work-In-Progress Exploit für Code-Ausführung im Userland.

So hat man das Exploit-Toolkit "PegaSwitch 3.0" für die Firmware 2.0.0 bis 3.0.0 und ein Open-Source Homebrew-SDK mit dem Namen "libtransistor" veröffentlicht. Dazu gesellt sich "Mephisto", ein hoch-performanter Emulator für Switch-Binarys. Unter "SwIPC" können Interessierte auch IPC-Spezifikationen finden.

Das Highlight ist aber definitiv ROhan. Dabei handelt es sich um einen Exploit für Code-Ausführung im Userland nur für die Firmware 3.0.0. Dazu wird u.a. ein Fehler im Service-Manager ("sm") des SwitchOS ausgenutzt, welcher mit der Firmware 3.0.1 behoben wurde. Das ist aber noch nicht alles: es wird auch ein kompromittiertes Sysmodul benötigt, mit dem ein Man-In-The-Middle auf die spl:-Services ausgeführt werden kann, welcher die Frage nach dem Debug-Mode immer mit "ja" beantwortet (IsDebugMode). Das wird eigentlich dazu benutzt, das Testen zu vereinfachen, kann aber hier dazu genutzt werden, die Signaturen-Checks zu überspringen.

Dem SwitchOS wird also vorgespielt, dass eine Binary im Entwicklermodus geladen wird, was die Signaturen (ob diese Binary von Nintendo stammt) nicht prüft.

Ein kompromittiertes Systemmodul wird benötigt, da der ReplyAndReceive-Syscall (der einen Service imitiert), im Internetbrowser nicht existiert – also übernimmt man kurzerhand einfach ein anderes Modul. Auf 3.0.0 enthält das sdb-Systemmodul, welches auch mit dieser Firmware eingeführt wurde, einige Fehler, was es zu einem attraktiven Angriffsziel macht.

Allerdings fehlt noch eine ROP-/JOP-Kette mit der arbiträre/"fremde" Funktionen aufgerufen werden können – das einzige, fehlende Stück zur Userland Code-Ausführung.

Das alles ist natürlich primär für Entwickler interessant, aber für Nutzer ist es interessant zu wissen, dass es vorangeht. Das Einzige, was wir euch mitgeben können, ist, dass ihr auf keinen Fall eure Switch auf 3.0.1+ aktualisieren solltet. Wer gezielt auf 3.0.0 aktualisieren möchte, kann dies bspw. mit Pokkén Tournament DX tun.

UPDATE: ROhan ausführlicher beschrieben.

Abonnieren
Benachrichtige mich bei
guest
26 Kommentare
Neueste
Älteste Am besten bewertet
Robert

Hi wollte mich auch bedanken bei Icon.
Du machst echt gute Arbeit und bist immer auf dem laufenden, echt tolle Arbeit.

Maddin0012

Ich möchte mich für die Jahre lange Arbeit auf wiidatabase bedanken. Ihr habt mir und vielen Menschen geholfen und ihr hält uns immer auf dem neusten stand. Danke für alles! 🙂

Martin

Kann ich nur zustimmen!

Martin

Besteht die Möglichkeit eine neue Switch zu kaufen und diese genau auf 3.0.0 upzudaten?

Martin

Sorry iCon habe es nur überflogen! Soll ich jetzt zuschlagen? Oder noch abwarten auf ein Angebot und hoffen das es für neuere fw einen exploit geben wird?

Martin

Was ist den mit dem bug alles möglich?

Martin

Ich kaufe sie mir jetzt mal und lass sie mal liegen. Kann Ich die Konsole auch in nem halben Jahr auf die Firmware updaten?

Martin

Gibt es die Konsole grad im Angebot?

Martin

Gibt es den auch alternativen zu dem Pokken Tournament DX Spiel? Kann ich eigentlich mit der FW 1.0.0 oder 3.0.0 auch Online spielen? Ich kriege derzeit ganze zeit die Meldung ich soll updaten.

El chapo

Ist das Spiel dann nicht spielbar wenn ich meine Switch auf 3.0.0 habe?

El Chapo

Ok danke und welche Firmware brauche ich für Mario Kart Deluxe?

Marax

… Jetzt habe ich meine von 2.5 auf 3.0.2 geupdatet …. Geil… Hoffentlich gibt es irgendwann etwas für neuere Firmwares

Tex

Na ja, es ist ja sowieso die Frage ob für "alle" überhaupt was kommt und wann es ist. Wenn man wirklich damit irgendwas besonderes machen möchte. Kauft man eine und legt sie in den Keller. 🙂

Wenn man damit basteln möchte etc. hat man sowieso mehr als ein Gerät.

Tex

Kann man eigentlich Spiele Updaten ohne Firmware Update? 🙂

Tex

Schau ich mir mal an, dankeschön! 🙂