Skip to content
Security & Trust

AI helped jailbreak the Switch 2, but a human still chose the path

The signature checks held up. The component that handed over the data they checked did not.

W
WebPulse Newsroom
AI-assisted · 4 min read
Share on X LinkedIn
AI helped jailbreak the Switch 2, but a human still chose the path
In brief
  • Sammy Hajhamid says that, to his knowledge, ns2jb is the first Switch 2 jailbreak. Codex found key bugs, but the work took about two weeks.
  • The exploit passed Nintendo's signature checks by compromising the file service that supplies the data being checked. The lock was sound, but its courier was not.
  • Ask which components in your systems vouch for data that others verify, and what your checks still prove if one is compromised.

A lock can be sound on paper and still fail. The weak point may be the courier who delivers what the lock inspects. That is the lesson of a new Nintendo Switch 2 jailbreak, and it applies well beyond games.

What happened

Sammy Hajhamid, who goes by pepsipu, published ns2jb, a software-only jailbreak for the Switch 2. It lets him run his own native code with the permissions of ordinary system services. He says that, to his knowledge, it is the first such exploit for the console.

The jailbreak is "tethered". The Verge reports that it must be launched from a game each time the console starts. The Verge also says it needs the game SmileBASIC 4, though another modder claims the game is "not strictly needed".

To show what it can do, Hajhamid had OpenAI's Codex mod Mario Kart World with new characters. He says that part was vibecoded in a day, just for fun. The Verge notes the method still looks very complex for most people. Users on a Switch 2 hacks forum are debating how big a deal it is.

Where the AI helped, and where it did not

Hajhamid first built a test rig so Codex could work without him. JetKVM devices let it send controller inputs and read the video output. A Bluetooth light-switch gadget from Amazon pressed the power button after each crash.

Codex did real work. It chose WebKit, the browser engine, as the first target. It found the key flaw in SmileBASIC and a useful memory object in the file service. Hajhamid also said several Codex instances explored which system services to attack.

But he says the AI did not do it alone. A goal he set for Codex to reach code execution in a game did not succeed. The jailbreak itself took "substantial effort for ~2 weeks". The WebKit route stalled against protections that block code reuse and forged pointers. Hajhamid chose to switch to Switch 1 games. He also chose to examine the built-in file service himself. Those were human judgment calls.

How the chain worked

Step one was SmileBASIC, a Switch 1 game. Hajhamid says Codex found an arithmetic flaw in its REMOVE command. Two numbers were added to check that a request fit the array. The sum could wrap around to a negative value and pass the check. That let the program read and write memory outside its limits.

Step two moved into the console's built-in file service, called fs. A file-path request with a certain character sequence made the service copy the path into a 0x301-byte buffer. A longer path overflowed it. Using a file cache object, Hajhamid turned that into full read and write access to the service's memory. He then edited his own process record to claim the identity of process 1, which gave it "FullPermission".

Step three beat the signature checks. To start a program, a loader service asks fs for the program's files. It also receives a hash and a developer signature for them. The loader checks that the permissions file is signed by Nintendo and that the hash is signed by the developer.

Hajhamid points out that the loader trusts fs to serve files that match that hash. With control of fs, he swapped in his own filesystem. It held the genuine permissions file but his own executable. Both checks passed, because the real hash and signature had already been sent.

The lesson: the signature proves the label, not the delivery

This is the publication's reading, not Hajhamid's. Think of a notary who stamps a contract while a courier carries the pages. The stamp is valid. But if the courier swaps the pages afterwards, the stamp proves little. The cryptography here was not broken. The component responsible for delivering the checked content was.

Hajhamid also noted that some console services have more privileges than others. He said the built-in fs service gets to skip certain access checks, which gives the same capabilities as an earlier hack called smhax. In this exploit, fs's standing let him run code as any ordinary service. He adds that he does not yet have a way into other built-in services.

This is a single research project on a consumer console. Hajhamid says he withheld one finding, and the sources include no response from Nintendo. It is one data point, not proof of a trend.

Questions for your team

Ask which components in your products, and your vendors' products, vouch for data that other components verify. If one of them were compromised, what would your signature and integrity checks still prove?

Ask how many separate weaknesses an attacker must chain to reach your most trusted layer. Hajhamid needed three: a game bug, a file-service overflow and a trust gap in loading. Fixing any one link changes the picture.

Ask whether your own security testers are using AI agents on your systems. The rig in this story was built from a few off-the-shelf parts. The skilled person's role was choosing where to look.

A signature says who wrote the code. It says little about who delivered it.

Produced by the WebPulse Newsroom with AI assistance from the original reporting credited below, and checked against that source by our editorial review. How we use AI.
Original reporting: Sammy Hajhamid (pepsipu), pepsipu.com.

Share this insight