Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

User:Wariohax/History on custom firmware: Difference between revisions

User page
m (reword missed)
(overhaul conventions, create a (mostly) consistent style and tone, and patch the gaps where some bits of info that should be mentioned aren't)
Line 1: Line 1:
{{#approvable_by: users = Wariohax}}<!-- remove this when the page is moved to 3DS namespace -->
<references />Heavy adaption of zoogie's "A Pretty Brief History of the 3ds Hacking/Homebrew Scene" from the "3DS hacking scene history" section on GBAtemp.
{{#approvable_by: users = Wariohax}}<!-- remove this when the page is moved to 3DS namespace -->
{{#approvable_by: users = Wariohax}}<!-- remove this when the page is moved to 3DS namespace -->
<references />Heavy adaption of zoogie's "A Pretty Brief History of the 3ds Hacking/Homebrew Scene" from the "3DS hacking scene history" section on GBAtemp.
<references />Heavy adaption of zoogie's "A Pretty Brief History of the 3ds Hacking/Homebrew Scene" from the "3DS hacking scene history" section on GBAtemp.
Line 4: Line 6:


=== March ===
=== March ===
March marks an important date, the release of the Nintendo 3DS in the west, and the creation of 3dbrew.  
The official release of the Nintendo 3DS in the west, and the creation of the wiki [[3dbrew:Main_Page|3dbrew]].  


=== June ===
=== June ===
First 3DS roms dumped
The first 3DS roms are dumped.


=== September ===
=== September ===
Crown3DS teases a promising video of a flashcard, but instead we got an Engrish website promising the community that they are progressing.
Crown3DS gives a teaser implying the creation of a flashcart, but instead released an Engrish website promising the community that they are progressing.


=== December ===
=== December ===
Release of tools that convert video to stereographic 3D video that is compatible with the app Nintendo 3DS Camera.
The first release of tools that convert video to the type of stereographic 3D video compatible with the Nintendo 3DS Camera.


== 2012 ==
== 2012 ==


=== Unknown Month ===
=== Unknown Month ===
Believed that Neimod's hardware RAM dumps and internal research lead to the first userland and a9 exploits.<ref>https://gbatemp.net/threads/3ds-hacking-scene-history.443396/</ref>
It is believed that Neimod's hardware RAM dumps and internal research led to the first userland and a9 exploits.<ref>https://gbatemp.net/threads/3ds-hacking-scene-history.443396/</ref>


=== March ===
=== March ===
The first (?) homebrew written in .cxi format, being "Hello World" written by Xcution (auther of CiTRUS, a tool that allows BaNneR and ICoN files to be made using .xbsf format)
The first (?) homebrew app is written in .cxi format, "Hello World", is written by Xcution (author of CiTRUS, a tool that allows BaNneR and ICoN files to be made using the .xbsf format)


== 2013 ==
== 2013 ==


=== August ===
=== August ===
August of 2013 is a pretty important year of the 3DS community, as it is when [[Gateway-3DS]] released, being the entirety of homebrew in the early years. At this time, there was basic arm9 homebrew possible via an [https://www.3dbrew.org/wiki/System_Settings MSET]   exploit combined with p3ds, [https://github.com/naehrwert/p3ds/tree/df8f52a8c22b7f4758e1a47b2ca712d12be60bc6] which are python tools for the 3DS.  
[[Gateway-3DS]] is first released, and serves as the sole option for homebrew in the 3DS' early years. At this time, there was basic arm9 homebrew possible via an [https://www.3dbrew.org/wiki/System_Settings MSET] exploit combined with [https://github.com/naehrwert/p3ds/tree/df8f52a8c22b7f4758e1a47b2ca712d12be60bc6 p3ds] (python tools for the 3DS).


=== December ===
=== December ===
Users in the community figure out how to reverse engineered the [[Gateway-3DS]] payload to create their own NAND emulation (or redirecting). Specifically users Smealum and Yellows8 create a private payload called RedNAND.   
Users in the community figure out how to reverse engineer [[Gateway-3DS]]' payload to create their own NAND emulation (or redirection). This leads to the users Smealum and Yellows8 creating a private payload called RedNAND.   


== 2014 ==
== 2014 ==


=== January ===
=== January ===
brickgate/brickway - A scandal where Gateway releases a FIRM that intentionally bricks 3DS's that run their software on Gateway clones such as R4 and Orange3DS.
brickgate/brickway - A scandal where Gateway released a FIRM that intentionally bricks consoles using Gateway3DS flashcart clones (such as R4 and Orange3DS). On top of this, its code was written badly enough that it triggered on many legitimate Gateway3DS cartridges, bricking completely 'innocent' users in the crossfire.


=== March ===
=== March ===
The first commit of Citra [https://citra-emulator.com/] is released.
The first commit of [https://citra-emulator.com/ Citra], the first major 3DS emulator, is released.


=== November ===
=== November ===
The leak of Palantine [https://www.gamebrew.org/wiki/Palantine_CFW_3DS](cfw made by Yellows8 and other) occurred, bringing a closed source custom firmware to the public (with limitations such as the EmuNAND not being update-able, a low-boot rate, not fun to install, etc. What it did do was run cias, which caused Gateway to add this feature as well.)
[https://www.gamebrew.org/wiki/Palantine_CFW_3DS Palantine] (a CFW made by Yellows8 and other) is leaked, bringing a closed-source custom firmware to the public. However, it had limitations such as the EmuNAND not being updateable, having a low boot rate, and being difficult to install, among others. The thing it did best, running CIAs, would be taken and added to Gateway3DS shortly after.  


The release of [[Sky3DS]] (could play clean cart roms, but no homebrew yet.)
The flashcart [[Sky3DS]] is released. It could play pirated roms on entirely stock consoles, but couldn't run homebrew and had a very high ban risk due to the way it worked.


The release of the userland exploit ninjhax [https://gbatemp.net/threads/introducing-ninjhax-a-nintendo-3ds-homebrew-exploit.374233/].
The userland exploit [https://gbatemp.net/threads/introducing-ninjhax-a-nintendo-3ds-homebrew-exploit.374233/ ninjhax] is officially released.


== 2015 ==
== 2015 ==


=== January ===
=== January ===
Gateway cracks 9.2 and updates their flashcards to OMEGA. User yifanlu posts a blog about reverse engineering memchunkhax/firmlaunchhax combo used by Gateway, and teams such SALT, roxas75, and patois implement quickly.  
Gateway cracks 9.2 and updates their flashcards to OMEGA. The user yifanlu makes a blog post about reverse engineering the memchunkhax/firmlaunchhax combo used by Gateway, and teams such SALT, roxas75, and patois implement their own versions of it shortly after.  


=== February ===
=== February ===
The release of roxas75's [https://gbatemp.net/threads/release-rxtools-roxas75-3ds-toolkit-fw-2-0-9-2.382782/ rxTools].
[https://gbatemp.net/threads/release-rxtools-roxas75-3ds-toolkit-fw-2-0-9-2.382782/ rxTools] is first released by roxas75.


=== May ===
=== May ===
The release of Pasta CFW (namesake coming from the leak of sigpatches of pastebin). It combined the works of patois' Brahma (open source memchunkhax/firmlaunchhax) to make the first open source custom firmware (no emunand).  
PastaCFW (named after a leak of sigpatches on pastebin) is first released. It combined the works of patois' Brahma (an open source memchunkhax/firmlaunchhax) to make the first open source custom firmware, though with no emuNAND support.  


Rxtools is patched out with signatures made by ahp_person (appletinivi), and Roxas does not like this
A fork of rxTools with sigpatches is released by ahp_person (appletinivi), and roxas75 attempts to stop the patches from becoming widespread out of concerns over piracy.


=== June ===
=== June ===
Roxas eventually gives in, releasing the rxTools source and adding the sig patches in officially, then quits the scene.
roxas75 eventually gives in due to popular demand, releasing the rxTools source and adding sigpatches in officially, then quits the homebrew scene immediately afterward.
 
(Maybe add on)


=== July ===
=== July ===
The release of Ninjhax2x.
The exploit Ninjhax2x is first released.


=== August ===
=== August ===
The release of Tubehax, a primary userland exploit that took advantage of the 3DS YouTube app, unfortunately being patched a couple months later on all firmware.
The exploits Tubehax and Ironhax are first released.
 
* Tubehax was a primary userland exploit that took advantage of the 3DS YouTube app, but was unfortunately patched only a couple months later on all firmware.
The release of Ironhax, the first secondary userland exploit (this means that it requires a primary, like Tubehax, to install).
* Ironhax was the first secondary userland exploit, meaning it requires extra leverage to work (usually from a primary exploit such as Tubehax).


The release of Reinand, the first full featured New3DS custom firmware.
ReiNand, the first fully-featured custom firmware to support the New 3DS, is released.


=== September ===
=== September ===
The release of Menuhax, a secondary home menu exploit which allows home menu userland execution.
The exploits Menuhax and Browserhax are first released.
* Menuhax is a secondary exploit of the Home Menu that allows userland control to be gained immediately on boot.
* Browserhax is a term for a series of primary exploits using the internet browsers for the n3DS and o3DS, which would become mainstays of the scene for a few more years before Nintendo finally killed off the potential for any new Browserhax.


The release of Browserhax, which are primary exploits that used the browser for the N3DS and O3DS that would be updated every so often in the coming months.
=== December ===
An upgrade to Sky3DS, Sky3DS+, is released. Among others, its new features included bypassing cart-based AP in recent games and adding a filesystem-based game loading feature.


=== December ===
The CCC hosts [https://gbatemp.net/threads/32c3-console-hacking-3ds-talk-dec-27-smea-derrek-plutoo.405640/ 32c3] in Hamburg, Germany. During 32c3, [https://smealum.github.io/3ds/32c3/ smealum gives a talk] where snshax, [[arm9loaderhax]], memchunkhax2, and ntrcardhax are revealed, & menuhax and ironhax receive updates to continue functioning.
Sky3ds+ released. bypassing cart-based AP in recent games and adds a filesystem-based game loading feature among others.
* snshax, menuchunkhax2, and ntrcardhax would ultimately be of little interest.
* Arm9loaderhax was the first custom bootloader (and thus also the first coldboot custom firmware) for the 3DS, and although it was somewhat unsafe and risky to install, it was still a massive step forward for the homebrew community.


The CCC hosts [https://gbatemp.net/threads/32c3-console-hacking-3ds-talk-dec-27-smea-derrek-plutoo.405640/ 32c3] in Hamburg, Germany, where snshax, [[arm9loaderhax]], memchunkhax2, and ntrcardhax are revealed. The userland exploits Menuhax and Ironhax are updated as well.


== 2016 ==
== 2016 ==


=== January ===
=== January ===
The release of 10.x downgrading to 9.2.
Downgrading is first introduced, allowing 10.x firmwares to revert to 9.2 for certain exploits.


Downgrading patched with 10.4.
Downgrading would soon after be patched by version 10.4.


=== February ===
=== February ===
The reign of [[arm9loaderhax]].
[[arm9loaderhax]] is fully released, and becomes a mainstay of the scene.


The release of Aureinand/Luma3DS, a fork of ReiNAND which took it's features to a new level. (The authors of Aureinand/Luma3DS, had a disagreement with the original author, Reisukaku, which lead to ties being cut, by first renaming Aureinand to Luma3DS, and then removing the fork status altogether.
AuReiNand, a fork of ReiNAND, is released after a disagreement with ReiNand's original author (Reisukaku) caused the rest of the developer team to cut ties. Soon after, it would be renamed to Luma3DS and lose its official status as a fork to help distance itself even further.


=== March ===
=== March ===
The release of memchunkhax2.1 by Aliaspider, allowed downgrades to 9.2 to resume, and would last through 10.7.
The exploit memchunkhax2.1 is released by Aliaspider, which allowed 9.2 downgrades to resume until version 10.7 patched it a second time.


=== May ===
=== May ===
Line 103: Line 106:


=== July ===
=== July ===
A user reveals the DSiWare firm downgrade method after it being hinted for months, this allowed downgrading to 9.2 to continue on firms 11.0 - 11.2.
A user reveals a DSiWare-based firm downgrade method after several months' worth of teasers. The release of this allowed 9.2 downgrades to continue on versions 11.0 - 11.2, before being patched a third time.


=== September ===
=== September ===
Arm9loaderhax dominates the scene even more due to CTRNand Transfer (shortening the install time of both new and old 3DS) and OTPless (instant N3DS install), though OTPless was later removed (from 3ds.guide) due to random bricking.
Arm9loaderhax gains two new tools that make its installation even easier: CTRNand Transfer (shortening the install time of both new and old 3DS) and OTPless (instant N3DS install). CTRNand Transfer would survive to see far more use, but OTPless was later removed from use due to having a small but completely random chance to brick.


=== December ===
=== December ===
Another big CCC, specifically 33c3. The announcement of Soundhax, which is a free (as opposed to ninjhax, which required Cubic Ninja, a paid game) userland primary for a system app (NIntendo 3DS Sound). This made it so almost all 3DS's were vulnerable. 33c3 also announced Fasthax, which is another k11 (arm11 kernel) exploit, also made by nedwill (creator of Soundhax). Also, at this event, scene veteran derrekr revealed sighax, which is a bootrom vulnerability that allows one to sign arbitrary firmware code, he also reveals vague detail about how he dumped the 3DS ARM9/ARM11 bootroms, though no detail about the code.<ref>https://wololo.net/2016/12/28/33c3-3ds-bootrom-cracked-sign-firmwares/</ref>  
The CCC hosts [https://gbatemp.net/threads/33c3-console-hacking-2016-3ds-wiiu-talk-dec-27-30-smea-derrek-nedwill-naehrwert.450043/ 33c3] in Hamburg, Germany. During 33c3, [https://derrekr.github.io/3ds/33c3/ derrekr gives a talk] where soundhax, fasthax, and sighax are revealed.
* Soundhax is a free (as opposed to ninjhax, which required Cubic Ninja, a paid game) userland primary exploit for Nintendo 3DS Sound made by nedwill. Almost all consoles at the time were vulnerable to this exploit.
* Fasthax is another k11 (arm11 kernel) exploit, also made by nedwill.  
* [https://zoogie.github.io/sh/ Sighax] is a complex exploit of a vulnerability in the bootrom revealed by derrekr; when used properly, it allows anyone to sign arbitrary firmware code without restrictions. derrekr also revealed vague details about how he dumped the 3DS ARM9/ARM11 bootroms, though gave no detail about the exact code.<ref>https://wololo.net/2016/12/28/33c3-3ds-bootrom-cracked-sign-firmwares/</ref>  


Nintendo launches a bug bounty program for the 3DS, the bounties being $100 - $20,000 per exploit, this would have an affect of exploit developers moving away from public releases.
Nintendo launches a bug bounty program for the 3DS, the bounties being $100 - $20,000 per exploit, this would have an affect of exploit developers moving away from public releases.
Line 116: Line 122:


=== January ===
=== January ===
A new arm9 exploit, safehax, is revealed by appleTinivi after an anonymous user posted the method on 3dbrew. This means that full control is possible up to firm 11.2, "people usually use this to CTRNand downgrade to 2.1, get the otp.bin, and then restore original NAND and install a9lh. " (quotes used as there isn't a better way to word this)
The arm9 exploit Safehax is released by the user appleTinivi after an anonymous user posted the method on 3dbrew. This exploit allows for full system control up to version 11.2, which significantly streamlined the process for installing a9lh; from this point on, it is reduced to directly downgrading to 2.1, using exploits on 2.1 to get a copy of otp.bin, and then restoring the original NAND and installing a9lh using their otp.


=== February ===
=== February ===
The release of firm 11.3 fixed safehax and Fasthax are fixed, this also fixes firm downgrading with DSiWare and hardmodding, if you tried, it would break the home menu.
safehax and fasthax are patched by the release of version 11.3, also permanently patching firm downgrading with DSiWare and hardmodding in the process.


=== April ===
=== April ===
11.4 is released, which fixes a previously unknown k11 (ARM11 kernel) vulnerability called udsploit, Smealum releases this exploit for those who are still on 11.3. Soon after this, AppleTinivi (creator of safehax and patcher of rxTools) updates safehax for 11.3 due to an oversight in Nintendo's previous safehax fix.  
A previously-unknown k11 exploit, udsploit is first released by Smealum just as it's patched by the release of version 11.4.  
 
Safehax is updated to work on 11.3 by AppleTinivi due to an oversight in Nintendo's previous patch for safehax.


=== May ===
=== May ===
Another big CCC again, just kidding it's 33.5c3 (unofficial sequel). It revealed [[boot9strap]], a firmware loader that implements a FIRM sighax signature, and is able to dump the bootroms in software (?). [[Ntrboot]] is also theorized and privately confirmed.
SciresM creates and gives an unofficial sequel to 33c3, 33.5c3. [https://sciresm.github.io/33-and-a-half-c3/ During this talk], [[boot9strap]] and the concepts that would later allow [[ntrboot]] are revealed.
* Boot9strap is effectively the sequel to arm9loaderhax, being a much cleaner custom bootloader that implements a FIRM sighax signature. Because of how it works, it carries near-zero brick risk and gains control early enough to keep access to the bootroms and decrypted OTP, allowing it to dump them in software.
* Ntrboot allows for any correctly signed firm to be booted from a DS cartridge when the correct keycombo is held down, which also skips the entire normal boot process. This allows it to serve both as an instant custom firmware installation method and an extremely potent unbricking tool.


Since firms can now be forged with nothing more than NAND access, "the DSiWare trasnfer and hardmod methods of installing custom firmware resume on the latest firmware using the plaintext attack. " (quotes are added as it is very similar to zoogie's post)
Since legitimate firms can now be created with nothing more than NAND access, DSiWare and hardmod-based downgrades resume on the latest firmware by using the known plaintext attack.


=== June ===
=== June ===
The N2DSXL is released in Australia and it's discovered that it happens to have the same vulnerable bootroms as the 3DS did, 7 years ago.
The n2DSXL is released in Australia, and it is quickly discovered that it happens to have the same vulnerable bootroms as the old 3DS models did.


=== August ===
=== August ===
[[Ntrboot]] is released, starting with support for just ak2i and R4 flashcards, but quickly grew to others.
[[Ntrboot]] is first released, starting only with support for ak2i and R4 flashcards but quickly growing to others.


=== September ===
=== September ===
The Gateway team reveals what they have been working on, a new flashcard called [[Stargate]], a supposed hybrid of a ntrboot card, ds card, and [[Sky3DS]]. It was abandoned after a few months due to people seeking out cheaper options for ntrboot cards.
The Gateway team reveals they have been working on a new flashcard called [[Stargate]], a supposed 3-in-1 hybrid of an ntrboot card, DS flashcart, and [[Sky3DS]]. It was abandoned after a few months due to people seeking out cheaper options for ntrboot cards.


== 2018 ==
== 2018 ==


=== January ===
=== January ===
A user reveals a method that brute-forces the movable.sed using only the Local Friend Code Seed (obtainable in userland). This method, called [[3DS:Seedminer|Seedminer]], allowed users to inject hacked DSiWare and install [[boot9strap]] with only one 3DS.  
A user reveals a method that brute-forces the movable.sed using only the LocalFriendCodeSeed (which is obtainable in userland). This method, called [[3DS:Seedminer|Seedminer]], allowed users to inject hacked DSiWare and install [[boot9strap]] with only one 3DS.  


=== July ===
=== July ===
Nintendo releases firm 11.8.
Nintendo releases version 11.8.


=== August ===
=== August ===
The 3DS hacking scene legend, Smealum, reveals an exploit he had long been teasing at defcon. It was an arm9 exploit chain, unfortunately already being patched in firm 11.8 because he disclosed it to the HackerOne bounty before this. In addition to this, he posted the incomplete repos on Github, but nobody to date (zoogie last edited this on October 22nd, 2023) has been able to get them to work.
Smealum reveals an arm9 exploit chain that he had been teasing at defcon, but it had already been patched in version 11.8 because he disclosed it to the HackerOne bug bounty program earlier on. As part of the reveal, he posted the incomplete repos on Github, but nobody to date has been able to make the exploit work.


=== September ===
=== September ===
A new version of Seedminer, called Frogminer is released, utilizing an old version of the Japanese Flipnote Studio, instead of using Sudoku and it was injected to DS Download Play instead of a DSiWare game. This allowed this specific miner exploit to be completely free.
A new version of Seedminer called Frogminer is released. This variant of the exploit utilizes an old version of the Japanese Flipnote Studio injected into DS Download Play instead of using Sudoku, meaning unlike the original, it was a completely free miner exploit.


=== December ===
=== December ===
Firm 11.9 was released, patching an unreleased browser exploit for both the O3DS and N3DS. All of this was caused by another HackerOne bounty submission, this time being submitted from userland exploit developer MrNbaYoh.  
Nintendo releases version 11.9, patching an unreleased browser exploit for both the O3DS and N3DS thanks to another HackerOne bounty submission by the userland exploit developer MrNbaYoh.  


== 2019 ==
== 2019 ==


=== July ===
=== July ===
The release of bannerbomb3, a userland primary for System Settings, being part of the miner series.
The exploit BannerBomb3, a userland primary exploit for System Settings that mostly uses the miner series as its secondary exploits, is first released.


=== December ===
=== December ===
Userland exploit developer MrNbaYoh demonstrates a new custom firmware chain at his 36c3 talk. He developed a primary that could remotely takeover a 3DS in userland via StreetPass tags. This would set up further exploits developed by Tuxsh, Lazypixie which would take over the ARM11 kernel, and Safehax 2.x for ARM9. This chain was patched on firm 11.12, which was released two months before this conference, as they were submitted to the HackerOne bounty sometime earlier.
The CCC hosts [https://gbatemp.net/threads/36c3-hacker-conference-underway-27th-to-30th-of-december-2019.555023/ 36c3] in Leipzig, Germany. During 36c3, [https://mrnbayoh.github.io/36c3/ MrNbaYoh gives a talk] that demonstrates a new primary exploit chain: using StreetPass tags, someone could remotely takeover a 3DS in userland and install custom firmware, with zero user interaction required. This would set up further exploits developed by TuxSH and Lazypixie which would take over the ARM11 kernel, and later on Safehax 2.x to also take over ARM9. However, due to its potential for malicious use (i.e. remotely bricking consoles), this exploit chain was submitted to HackerOne sometime earlier and patched in version 11.12, two months before 36c3 started.


== 2020 ==
== 2020 ==


=== April ===
=== April ===
A new exploit for the SAFE_MODE released, called unSAFE_MODE, which springs a new version of Safehax for the latest firmware 11.13.
The exploit unSAFE_MODE, a new version of safehax for version 11.13, is first released.


=== July ===
=== July ===
Nintendo's HackerOne bounty program is ended on July 15th. [https://hackerone.com/nintendo/updates?type=team]
Nintendo's HackerOne bounty program is closed on July 15th. [https://hackerone.com/nintendo/updates?type=team]


=== August ===
=== August ===
The user zoogie releases a new browserhax for both the New and O3DS.
The exploit new-browserhax, the simplest and most potent browserhax yet, is released for both the n3DS and o3DS by zoogie. This begins a temporary 'golden age' where installing CFW is the easiest it ever has been, or will be (as of 2025-03-13).


=== September ===
=== September ===
Nintendo shuts down 3DS retail production.
Nintendo shuts down retail production of all 3DS models.


=== October ===
=== October ===
Release of Menuhax67, continuing a Yellows8 tradition, but this time zoogie makes it. Menuhax67 is a secondary exploit for the home menu. (great meme)
The exploit menuhax67, the successor to Yellows8's menuhax, is first released by zoogie. This version of the exploit is even simpler to activate than the original. (And it's a great meme)


=== November ===
=== November ===
Nintendo releases firmware update 11.14.0.46, fixing a few last minute submissions of exploits from the HackerOne bounty. This also fixes zoogie's new browserhax, released in August, which makes the userland entry point to back to Seedminer.
Nintendo releases version 11.14.0-46, fixing a few last-minute submissions of exploits from the HackerOne bounty. This also fixes zoogie's new-browserhax, which ends the 'golden age' temporarily and changes the main userland entry point to back to Seedminer.


=== December ===
=== December ===
After a month of cool of, required when submitting HackerOne bugs, MrNbaYoh and TuxSH disclose exploits such SSLoth, a vulnerability that allows an attacker to bypass an SSL encryption for the 3DS Network Communications, which sets up another exploit submitted to HackerOne called safecerthax. (can still be executed on 11.4 in safe mode, although being fixed on native firm and N3DS) This allowed for a full chain to boot9strap on the O3DS. During this time TuxSH updated his universal-otherapp to include a new full chain, (added smpwn, spipwn, khax and agbhax) that work on native firm. All of this with a new N3DS browser exploit called new-browserhax-XL from zoogie, made the N3DS have a full chain as well.
After the one month cooldown between each submission of bugs to HackerOne, MrNbaYoh and TuxSH disclose the exploits SSLoth and safecerthax. These two exploits, combined, created a full chain to boot9strap on o3DS models (and still do, when triggered through [[3DS:Safe Mode|Safe Mode]]).
 
TuxSH updates universal-otherapp to include a new exploit chain (based on smpwn, spipwn, khax and agbhax) that works on NATIVE_FIRM.
 
The exploit new-browserhax-xl is released by zoogie, resuming the 'golden age' of easy CFW installs.


== 2021 ==
== 2021 ==


=== January ===
=== January ===
Nintendo kills off Unity3DS and many debugging/dev hardware items.
Nintendo ends Unity3DS and many debugging/dev hardware items in one fell swoop.


=== April ===
=== April ===
Old-browserhax-XL is released
The exploit old-browserhax-xl is first released by zoogie, complementing new-browserhax-xl so that all consoles have a browser exploit available again.


PabloMK7 (creator of CTGP-7) releases a semi-primary exploit for Mario Kart 7 called [[3DS:Kartdlphax|kartdlphax]].
The exploit [[3DS:Kartdlphax|kartdlphax]], a semi-primary exploit for Mario Kart 7, is released by PabloMK7 (creator of CTGP-7).


=== July ===
=== July ===
Nintendo releases firmware 11.15, patching two of zoogie's browserhax at the same time, bringing back Seedminer.
Nintendo releases version 11.15, which patches SSLoth in Safe Mode and both browserhax-xl exploits, ending the 'golden age' for good. Seedminer takes its place again.
 
Nintendo also finishes off SSLoth by blocking it in SAFE_MODE.


== 2022 ==
== 2022 ==


=== August ===
=== August ===
Nintendo releases 11.16, breaking TuxSH's universal-otherapp combo, because smpwn was fixed in this update.
Nintendo releases version 11.16, breaking TuxSH's universal-otherapp combo by patching smpwn.


Nintendo also lays foundation for the eShop closure, updating MINT/ESHOP to handle shutting down eShop payments, two weeks later they would update the NVER on this title due to a typo in the web data module.
Nintendo also lays the foundation for the eShop closure by updating MINT/ESHOP to handle shutting down eShop payments. Just two weeks later, they would update the NVER on this title due to a typo in the web data module.


=== December ===
=== December ===
PabloMK7 reveals ENLBufferPwn, an exploit for Mario Kart 7. Specifically an online RCE exploit which was already patched on Mario Kart 7 version 1.2. PabloMK7 disclosed this exploit as it could've led to mass bricking on consoles and online cheating.
The exploit ENLBufferPwn, an online RCE exploit for Mario Kart 7, is disclosed by PabloMK7 after it was already patched in version 1.2 of the game. Although it had potential for custom firmware, PabloMK7 disclosed it because it also had potential for mass bricks and/or online cheats.


== 2023 ==
== 2023 ==


=== March ===
=== March ===
Another browser exploit is released for the N3DS, being Super Skaterhax.
The exploit super-skaterhax, another n3DS-only primary browser exploit, is first released.


Nintendo closes the eShop on the 27th, impacting free exploits and DSiware exploits.
Nintendo closes the eShop on the 27th, restricting all exploits that relied on free games and DSiWare to people who had bought them before its close. These exploits were removed from the guide's main paths shortly after.


=== May ===
=== May ===
Nintendo releases firmware version 11.17, patching bannerbomb3. This left the O3DS with no free exploit softmod for the first time in a while.
Nintendo releases version 11.17, patching BannerBomb3 and leaving the o3DS with no free softmod method for the first time in a while.


=== July ===
=== July ===
TuxSH and luigoalma release nimdsphax, which is a userland to arm9 exploit chain.
The exploit nimdsphax, a secondary exploit requiring userland access, is first released by TuxSH and luigoalma.


Zoogie releases Kartminer7, which is a Seedminer launched exploit that targets the extdata of Mario Kart 7, working on the eShop and cartridge versions of the game.
The exploit Kartminer7, a secondary exploit requiring Seedminer and a copy of Mario Kart 7 (can be either physical or digital), is first released by zoogie.


=== October ===
=== October ===
Zoogie releases MSET9, which is a straight to arm9 exploit. This restores free homebrew for the O3DS, it also seems to work consistently and across many different regions and firmware.
The exploit MSET9, a full exploit of System Settings with no extra requirements, is first released by zoogie. This restores free softmod access for the o3DS, but also works consistently on the n3DS as well and is generally an extremely stable exploit.


=== December ===
=== December ===
Zoogie (?) calls it quits and is looking forward to future challenges whilst appreciating the time "he had helping people unlock their 3DSs!" -zoogie
Zoogie(?) calls it quits and is looking forward to future challenges whilst appreciating the time "he had helping people unlock their 3DSs!" -zoogie

Revision as of 00:50, 14 March 2025

Heavy adaption of zoogie's "A Pretty Brief History of the 3ds Hacking/Homebrew Scene" from the "3DS hacking scene history" section on GBAtemp.

Heavy adaption of zoogie's "A Pretty Brief History of the 3ds Hacking/Homebrew Scene" from the "3DS hacking scene history" section on GBAtemp.

2011

March

The official release of the Nintendo 3DS in the west, and the creation of the wiki 3dbrew.

June

The first 3DS roms are dumped.

September

Crown3DS gives a teaser implying the creation of a flashcart, but instead released an Engrish website promising the community that they are progressing.

December

The first release of tools that convert video to the type of stereographic 3D video compatible with the Nintendo 3DS Camera.

2012

Unknown Month

It is believed that Neimod's hardware RAM dumps and internal research led to the first userland and a9 exploits.[1]

March

The first (?) homebrew app is written in .cxi format, "Hello World", is written by Xcution (author of CiTRUS, a tool that allows BaNneR and ICoN files to be made using the .xbsf format)

2013

August

Gateway-3DS is first released, and serves as the sole option for homebrew in the 3DS' early years. At this time, there was basic arm9 homebrew possible via an MSET exploit combined with p3ds (python tools for the 3DS).

December

Users in the community figure out how to reverse engineer Gateway-3DS' payload to create their own NAND emulation (or redirection). This leads to the users Smealum and Yellows8 creating a private payload called RedNAND.

2014

January

brickgate/brickway - A scandal where Gateway released a FIRM that intentionally bricks consoles using Gateway3DS flashcart clones (such as R4 and Orange3DS). On top of this, its code was written badly enough that it triggered on many legitimate Gateway3DS cartridges, bricking completely 'innocent' users in the crossfire.

March

The first commit of Citra, the first major 3DS emulator, is released.

November

Palantine (a CFW made by Yellows8 and other) is leaked, bringing a closed-source custom firmware to the public. However, it had limitations such as the EmuNAND not being updateable, having a low boot rate, and being difficult to install, among others. The thing it did best, running CIAs, would be taken and added to Gateway3DS shortly after.

The flashcart Sky3DS is released. It could play pirated roms on entirely stock consoles, but couldn't run homebrew and had a very high ban risk due to the way it worked.

The userland exploit ninjhax is officially released.

2015

January

Gateway cracks 9.2 and updates their flashcards to OMEGA. The user yifanlu makes a blog post about reverse engineering the memchunkhax/firmlaunchhax combo used by Gateway, and teams such SALT, roxas75, and patois implement their own versions of it shortly after.

February

rxTools is first released by roxas75.

May

PastaCFW (named after a leak of sigpatches on pastebin) is first released. It combined the works of patois' Brahma (an open source memchunkhax/firmlaunchhax) to make the first open source custom firmware, though with no emuNAND support.

A fork of rxTools with sigpatches is released by ahp_person (appletinivi), and roxas75 attempts to stop the patches from becoming widespread out of concerns over piracy.

June

roxas75 eventually gives in due to popular demand, releasing the rxTools source and adding sigpatches in officially, then quits the homebrew scene immediately afterward.

July

The exploit Ninjhax2x is first released.

August

The exploits Tubehax and Ironhax are first released.

  • Tubehax was a primary userland exploit that took advantage of the 3DS YouTube app, but was unfortunately patched only a couple months later on all firmware.
  • Ironhax was the first secondary userland exploit, meaning it requires extra leverage to work (usually from a primary exploit such as Tubehax).

ReiNand, the first fully-featured custom firmware to support the New 3DS, is released.

September

The exploits Menuhax and Browserhax are first released.

  • Menuhax is a secondary exploit of the Home Menu that allows userland control to be gained immediately on boot.
  • Browserhax is a term for a series of primary exploits using the internet browsers for the n3DS and o3DS, which would become mainstays of the scene for a few more years before Nintendo finally killed off the potential for any new Browserhax.

December

An upgrade to Sky3DS, Sky3DS+, is released. Among others, its new features included bypassing cart-based AP in recent games and adding a filesystem-based game loading feature.

The CCC hosts 32c3 in Hamburg, Germany. During 32c3, smealum gives a talk where snshax, arm9loaderhax, memchunkhax2, and ntrcardhax are revealed, & menuhax and ironhax receive updates to continue functioning.

  • snshax, menuchunkhax2, and ntrcardhax would ultimately be of little interest.
  • Arm9loaderhax was the first custom bootloader (and thus also the first coldboot custom firmware) for the 3DS, and although it was somewhat unsafe and risky to install, it was still a massive step forward for the homebrew community.


2016

January

Downgrading is first introduced, allowing 10.x firmwares to revert to 9.2 for certain exploits.

Downgrading would soon after be patched by version 10.4.

February

arm9loaderhax is fully released, and becomes a mainstay of the scene.

AuReiNand, a fork of ReiNAND, is released after a disagreement with ReiNand's original author (Reisukaku) caused the rest of the developer team to cut ties. Soon after, it would be renamed to Luma3DS and lose its official status as a fork to help distance itself even further.

March

The exploit memchunkhax2.1 is released by Aliaspider, which allowed 9.2 downgrades to resume until version 10.7 patched it a second time.

May

R11

July

A user reveals a DSiWare-based firm downgrade method after several months' worth of teasers. The release of this allowed 9.2 downgrades to continue on versions 11.0 - 11.2, before being patched a third time.

September

Arm9loaderhax gains two new tools that make its installation even easier: CTRNand Transfer (shortening the install time of both new and old 3DS) and OTPless (instant N3DS install). CTRNand Transfer would survive to see far more use, but OTPless was later removed from use due to having a small but completely random chance to brick.

December

The CCC hosts 33c3 in Hamburg, Germany. During 33c3, derrekr gives a talk where soundhax, fasthax, and sighax are revealed.

  • Soundhax is a free (as opposed to ninjhax, which required Cubic Ninja, a paid game) userland primary exploit for Nintendo 3DS Sound made by nedwill. Almost all consoles at the time were vulnerable to this exploit.
  • Fasthax is another k11 (arm11 kernel) exploit, also made by nedwill.
  • Sighax is a complex exploit of a vulnerability in the bootrom revealed by derrekr; when used properly, it allows anyone to sign arbitrary firmware code without restrictions. derrekr also revealed vague details about how he dumped the 3DS ARM9/ARM11 bootroms, though gave no detail about the exact code.[2]

Nintendo launches a bug bounty program for the 3DS, the bounties being $100 - $20,000 per exploit, this would have an affect of exploit developers moving away from public releases.

2017

January

The arm9 exploit Safehax is released by the user appleTinivi after an anonymous user posted the method on 3dbrew. This exploit allows for full system control up to version 11.2, which significantly streamlined the process for installing a9lh; from this point on, it is reduced to directly downgrading to 2.1, using exploits on 2.1 to get a copy of otp.bin, and then restoring the original NAND and installing a9lh using their otp.

February

safehax and fasthax are patched by the release of version 11.3, also permanently patching firm downgrading with DSiWare and hardmodding in the process.

April

A previously-unknown k11 exploit, udsploit is first released by Smealum just as it's patched by the release of version 11.4.

Safehax is updated to work on 11.3 by AppleTinivi due to an oversight in Nintendo's previous patch for safehax.

May

SciresM creates and gives an unofficial sequel to 33c3, 33.5c3. During this talk, boot9strap and the concepts that would later allow ntrboot are revealed.

  • Boot9strap is effectively the sequel to arm9loaderhax, being a much cleaner custom bootloader that implements a FIRM sighax signature. Because of how it works, it carries near-zero brick risk and gains control early enough to keep access to the bootroms and decrypted OTP, allowing it to dump them in software.
  • Ntrboot allows for any correctly signed firm to be booted from a DS cartridge when the correct keycombo is held down, which also skips the entire normal boot process. This allows it to serve both as an instant custom firmware installation method and an extremely potent unbricking tool.

Since legitimate firms can now be created with nothing more than NAND access, DSiWare and hardmod-based downgrades resume on the latest firmware by using the known plaintext attack.

June

The n2DSXL is released in Australia, and it is quickly discovered that it happens to have the same vulnerable bootroms as the old 3DS models did.

August

Ntrboot is first released, starting only with support for ak2i and R4 flashcards but quickly growing to others.

September

The Gateway team reveals they have been working on a new flashcard called Stargate, a supposed 3-in-1 hybrid of an ntrboot card, DS flashcart, and Sky3DS. It was abandoned after a few months due to people seeking out cheaper options for ntrboot cards.

2018

January

A user reveals a method that brute-forces the movable.sed using only the LocalFriendCodeSeed (which is obtainable in userland). This method, called Seedminer, allowed users to inject hacked DSiWare and install boot9strap with only one 3DS.

July

Nintendo releases version 11.8.

August

Smealum reveals an arm9 exploit chain that he had been teasing at defcon, but it had already been patched in version 11.8 because he disclosed it to the HackerOne bug bounty program earlier on. As part of the reveal, he posted the incomplete repos on Github, but nobody to date has been able to make the exploit work.

September

A new version of Seedminer called Frogminer is released. This variant of the exploit utilizes an old version of the Japanese Flipnote Studio injected into DS Download Play instead of using Sudoku, meaning unlike the original, it was a completely free miner exploit.

December

Nintendo releases version 11.9, patching an unreleased browser exploit for both the O3DS and N3DS thanks to another HackerOne bounty submission by the userland exploit developer MrNbaYoh.

2019

July

The exploit BannerBomb3, a userland primary exploit for System Settings that mostly uses the miner series as its secondary exploits, is first released.

December

The CCC hosts 36c3 in Leipzig, Germany. During 36c3, MrNbaYoh gives a talk that demonstrates a new primary exploit chain: using StreetPass tags, someone could remotely takeover a 3DS in userland and install custom firmware, with zero user interaction required. This would set up further exploits developed by TuxSH and Lazypixie which would take over the ARM11 kernel, and later on Safehax 2.x to also take over ARM9. However, due to its potential for malicious use (i.e. remotely bricking consoles), this exploit chain was submitted to HackerOne sometime earlier and patched in version 11.12, two months before 36c3 started.

2020

April

The exploit unSAFE_MODE, a new version of safehax for version 11.13, is first released.

July

Nintendo's HackerOne bounty program is closed on July 15th. [1]

August

The exploit new-browserhax, the simplest and most potent browserhax yet, is released for both the n3DS and o3DS by zoogie. This begins a temporary 'golden age' where installing CFW is the easiest it ever has been, or will be (as of 2025-03-13).

September

Nintendo shuts down retail production of all 3DS models.

October

The exploit menuhax67, the successor to Yellows8's menuhax, is first released by zoogie. This version of the exploit is even simpler to activate than the original. (And it's a great meme)

November

Nintendo releases version 11.14.0-46, fixing a few last-minute submissions of exploits from the HackerOne bounty. This also fixes zoogie's new-browserhax, which ends the 'golden age' temporarily and changes the main userland entry point to back to Seedminer.

December

After the one month cooldown between each submission of bugs to HackerOne, MrNbaYoh and TuxSH disclose the exploits SSLoth and safecerthax. These two exploits, combined, created a full chain to boot9strap on o3DS models (and still do, when triggered through Safe Mode).

TuxSH updates universal-otherapp to include a new exploit chain (based on smpwn, spipwn, khax and agbhax) that works on NATIVE_FIRM.

The exploit new-browserhax-xl is released by zoogie, resuming the 'golden age' of easy CFW installs.

2021

January

Nintendo ends Unity3DS and many debugging/dev hardware items in one fell swoop.

April

The exploit old-browserhax-xl is first released by zoogie, complementing new-browserhax-xl so that all consoles have a browser exploit available again.

The exploit kartdlphax, a semi-primary exploit for Mario Kart 7, is released by PabloMK7 (creator of CTGP-7).

July

Nintendo releases version 11.15, which patches SSLoth in Safe Mode and both browserhax-xl exploits, ending the 'golden age' for good. Seedminer takes its place again.

2022

August

Nintendo releases version 11.16, breaking TuxSH's universal-otherapp combo by patching smpwn.

Nintendo also lays the foundation for the eShop closure by updating MINT/ESHOP to handle shutting down eShop payments. Just two weeks later, they would update the NVER on this title due to a typo in the web data module.

December

The exploit ENLBufferPwn, an online RCE exploit for Mario Kart 7, is disclosed by PabloMK7 after it was already patched in version 1.2 of the game. Although it had potential for custom firmware, PabloMK7 disclosed it because it also had potential for mass bricks and/or online cheats.

2023

March

The exploit super-skaterhax, another n3DS-only primary browser exploit, is first released.

Nintendo closes the eShop on the 27th, restricting all exploits that relied on free games and DSiWare to people who had bought them before its close. These exploits were removed from the guide's main paths shortly after.

May

Nintendo releases version 11.17, patching BannerBomb3 and leaving the o3DS with no free softmod method for the first time in a while.

July

The exploit nimdsphax, a secondary exploit requiring userland access, is first released by TuxSH and luigoalma.

The exploit Kartminer7, a secondary exploit requiring Seedminer and a copy of Mario Kart 7 (can be either physical or digital), is first released by zoogie.

October

The exploit MSET9, a full exploit of System Settings with no extra requirements, is first released by zoogie. This restores free softmod access for the o3DS, but also works consistently on the n3DS as well and is generally an extremely stable exploit.

December

Zoogie(?) calls it quits and is looking forward to future challenges whilst appreciating the time "he had helping people unlock their 3DSs!" -zoogie