• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

[Switch Homebrew] Open-source SDK and userland code execution toolkit released

Atheerios

Member
Lots of interesting things are happening today for the future of the Nintendo Switch scene. PegaSwitch, a group of Switch hackers, have released their tools for developers, allowing people to make their own Switch homebrew.

The toolkit works on Switch with firmware version between 2.0 and 3.0, so if you have updated your Switch you won't be able to get benefits from this, at least for now.

Please note that this release is aimed at developers. There's nothing users can do right now with these tools, however, now that the tools are out it's just a matter of time before we get the first usable homebrew app.

ReSwitched is proud to announce that a large portion of our development, previously done behind closed doors, is moving to the open. From the beginning, we have strived to be as transparent as is possible; today’s shift follows through on that commitment.

PegaSwitch 3.0 is an extensive exploitation toolkit for Switch OS 2.0.0-3.0.0. With complete support for IPC, a brand new API, and automatic gadget hunting, it gives us a new window into the Switch platform. https://github.com/reswitched/Pegaswitch

libtransistor is our open-source SDK for the Switch. Designed from the ground-up to make use of the LLVM+Clang stack, we intend for it to be a highly-accessible, community-driven platform for homebrew development. https://github.com/reswitched/libtransistor

Mephisto is a high-performance emulator for non-game Switch binaries. Mephisto features a high degree of determinism, GDB debugging support (even allowing source-level debugging of sysmodules in IDA), and compatibility with a large number of Switch OS features. To clarify again: Mephisto is not for and will never be for games. But it is an invaluable tool for development. https://github.com/reswitched/Mephisto

SwIPC is our project to define a canonical specification for IPC messages. Covering the majority of the system, we are able to automatically generate both client and server code. This means that improvements to SwIPC automatically improve all our other projects. https://github.com/reswitched/SwIPC

The development of all of these projects will now be happening 100% in public, with the entire community encouraged to contribute. While private development has its place, there are a lot of very capable individuals in our community – we want to work with all of you.

To that end, we’re also announcing that we have a mechanism, which we are calling ROhan, for userland arbitrary code execution on Switch OS 3.0.0. The development of the requisite exploit is not complete and will now be shifting into public. For the nitty-gritty technical details, please see ROhan.

None of what we’re releasing today is ready for anyone but the most dedicated hackers. However, we know that by shifting development into the public where anyone can contribute, this will be ready for end users far faster than if we were to continue our work in private.

Thank you for your continued support and we can’t wait to work with all of you.
- Team ReSwitched

https://reswitched.tech/octrelease
 

nynt9

Member
Cool! Will be interesting to see when people port Doom (original) :p

Though without kernel mode we can't do much right?

Also reminding people that equating this to piracy and derailing the thread is bannable.
 

Atheerios

Member
Cool! Will be interesting to see when people port Doom (original) :p

Though without kernel mode we can't do much right?

Also reminding people that equating this to piracy and derailing the thread is bannable.

With userland code execution we can backup / modify saves and extract files from games (datamining). Probably there are other things, but that's what I remember right now.

Piracy is definitely not possible right now.
 

Vena

Member
Cool! Will be interesting to see when people port Doom (original) :p

Though without kernel mode we can't do much right?

Also reminding people that equating this to piracy and derailing the thread is bannable.

This is basically just the public release of what they had for months going on in the dark (though its also been leaking nonstop from lurkers, so its really not like they were being *all* that secretive to begin with). But now that hardware at retail is now shipping with 3.0.1, they probably don't feel the need to keep it hidden any more. There's no way to downgrade Switches, after all.

ROhan is the new part of this release where they finally demonstrate userland-limited code execution, though this was also done before, its just not documented and in a publicly available toolset.

They've been making a lot of progress in their code emulators, and I guess they were happy enough now with it all to release it as a big public package.
 

mebizzle

Member
I hope this leads to save access eventually. Having an offline backup of my Pokebank makes me all warm and fuzzy feeling.
 

Vena

Member

Already what? They've had this level of access since near-launch due to the 3DS-like compromise that they found.

In terms of timetables? Only the X1 wasn't cracked wide open within a few months, PS4 has the infamous 1.76 firmware.

I hope this leads to save access eventually. Having an offline backup of my Pokebank makes me all warm and fuzzy feeling.

They already have save access. But PokeBank will likely shift much as the rest of Nintendo's online security did, if they detect tinkering or hacks, they will ban your console-specific cert and permanently ban the system from their servers (as this is a handshake, you can't spoof it).
 

Vena

Member
Cfw when?

They need a lot more access for CFW, and they have to get past several layers of boot protection, including the hardware-level guard. Due to security changes on Nintendo's end, CFW won't actually enable much, so there may not be interest in a straight up CFW, and people may just work in the 3.0.0 FW.

This is code execution *in* OS userland.
 
It's still years off but man, the switch OS is so shit I think there is room for a CFW that offers basic things like backing up saves
 
Top Bottom