RocketLauncher Exploit voor Nintendo DSi!
Op het GBATEMP forum heeft Apache Thunder een nieuwe exploit voor Nintendo DSi aangekondigd. De exploit werd ontdekt in mei van dit jaar.
Today I can finally announce a new exploit. I found this flaw back on May 29th. Almost a year after NoCash initially discovered a oversight by Nintendo involving the DS Cart White list which this exploit takes advantage of (Nintendo forgot to reimplement the RSA checks on it lolz). I was fudging with various things in the white list to try and get a crash. I got system menu to crash by using large values in section 3! So I contacted NoCash and a few other devs about this to investigate it and to see if it’s exploitable. Well long story short it was!
Summery of the above video:
1. The exploit requires 1.4.0 firmware! Older or newer fw revisions do not work!
2. The exploit requires a flashcart that you are able to modify the internal rom it presents to the system.
3. Details on which cards will be compatible will be revealed at a later time.
4. The exploit involves a buffer overflow flaw involving section 3 of the white list.
5. This overflow occurs on arm7 thus allowing overwriting memory exclusive to arm7.
6. As a result a large enough overflow will hit the exception vectors. This is how we gain code execution.
7. Arm9 was relatively easy to take over. Though data caching presented a minor roadblock while testing on hardware.
8. I currently use a modified build of nds-bootloader from WinterMute’s github. You know, that portion of hbmenu responsible for booting SRLs.
9. Because we already gained arm7 we only had to put arm9 in the correct wait state so that nds-bootloader can do it’s thing.
10. The exploit in theory can work from the menu once it’s running. But we currently make use of the auto boot feature to ensure a stable consistant environment. Tests with a second console suggest that is the case. Note that the exception vector for arm7 seems to either be somewhere else once the menu GUI is running or the overflow hits something else causing arm7 to crash early. Currently we plan to only target exploiting the system with an autoboot rom as it’s more predictable.
11. The exact machanics of the arm9 take over and how nds-bootloader is loaded may change. Currently the entire payload fits on the cart. But we may allow reading a payload off SD instead.
Credits to NoCash, Gericom, and Normmatt for help testing/figuring this out. Big credit to StuckPixel who put in most of the coding needed to make this happen. My contribution was finding the flaw and help with testing on hardware.
I will release further details as we finalize this exploit and prepare stuff that will make installing it easier.
Note you will either need a nand mod or a DSiWare based exploit to downgrade your console/install the modified white list needed for this to work. Hopefully we’ll have a better solution then simply using fwtool to do this so that may be the factor that determines release date so please be patient!
When things are ready I will update this thread!