Hacking A channel-less, sd-less entry point: str2hax

Fullmetal5

Well-Known Member
OP
Member
Joined
Dec 10, 2017
Messages
105
Trophies
0
Age
25
XP
674
Country
United States
I am using connection 1, wired.

However because I use a static IP address (required in my network, no DHCP), I cannot use auto DNS (the button is disabled in the network config). Do you think you could mod your exploit so it sets the DNS to 8.8.8.8 / 8.8.4.4 when it detects that auto DNS is not possible?
Well that explains it. When making it I was debating which I should do. Set it to 8.8.8.8/4.4.4.4 or use Auto DNS. I choose Auto DNS because I couldn't think of any reason for it to fail. I didn't think about it not working with no DHCP.
I'll switch the network loader over to setting it to manual DNS with 8.8.8.8/4.4.4.4 as the settings.

EDIT: Ok, the site had been updated to use manual dns now.
 
Last edited by Fullmetal5,

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,859
Country
Germany
Thanks, just tested it again and now it works. Pretty cool exploit, looking forward to the source release so we can make a version for Wiimmfi.

Do you know if the EULA display thing supports links? Then the server could theoretically send a web page with a few links for the user to select what binary to download and run ...

EDIT: Uuh, you do know that google's 2nd DNS is 8.8.4.4 and that 4.4.4.4 (the one you use as 2nd one) doesn't exist?
 
Last edited by leseratte,

Fullmetal5

Well-Known Member
OP
Member
Joined
Dec 10, 2017
Messages
105
Trophies
0
Age
25
XP
674
Country
United States
Thanks, just tested it again and now it works. Pretty cool exploit, looking forward to the source release so we can make a version for Wiimmfi.

Do you know if the EULA display thing supports links? Then the server could theoretically send a web page with a few links for the user to select what binary to download and run ...
It's very weird. I only messed around with a few aspects of user interaction with the page and some of it seems broken.
Don't try to have the page redirect or use iframe's or doing ANYTHING that isn't in the directory it's hosted on. Even loading pictures like <img src="../example.png"> will fail. If you want user interaction I would have buttons that run javascript to load the right payload.png then triggers the exploit.
Also DON'T use XMLHttpRequest. It's broken and will just crash the browser. (Doesn't seem exploitable)
Another option is to build a app that lets the user select stuff and just always load it to get around all the weird restrictions of the browser.

You may experiment more with user interaction on the page as I didn't do much. Just make sure you set the page title to "End User License Agreement" or the wii will just throw an error at you.
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,859
Country
Germany
OK, then I will definitely mess around with this some more when it's released.

Well it wouldn't even need to be released, I can just have two links to the same payload in different paths. I'll let you know if I happen to get it to work.
 

Fullmetal5

Well-Known Member
OP
Member
Joined
Dec 10, 2017
Messages
105
Trophies
0
Age
25
XP
674
Country
United States
OK, then I will definitely mess around with this some more when it's released.

Well it wouldn't even need to be released, I can just have two links to the same payload in different paths. I'll let you know if I happen to get it to work.
The network loader has been uploaded to https://github.com/Fullmetal5/WiiNetworkLoader if you want to mess with it.
You MUST change the Makefile line "include $(DEVKITPPC)/wii_rules" to a location where you have built libogc with -Os or you will get too big a binary for this to work.

If you make any changes to elf loading then you have copy the updated elf_loader.h file from elf_loader to source to build the loader with it.
 
Last edited by Fullmetal5,
  • Like
Reactions: barronwaffles

Fullmetal5

Well-Known Member
OP
Member
Joined
Dec 10, 2017
Messages
105
Trophies
0
Age
25
XP
674
Country
United States
What firmwares does this work on? I tested it on 4.2E yesterday and it worked so it's definitely working on more than just 4.3
It depends on what version of the EULA "app" that firmware has. I'm not sure when they updated the app so I'm not really sure what versions it works on.
 

XFlak

Wiitired but still kicking
Member
Joined
Sep 12, 2009
Messages
13,846
Trophies
3
Age
38
Location
Cyprus, originally from Toronto
Website
modmii.github.io
XP
9,842
Country
Cyprus
Fuck you, update 4.3 kill boot2
You are mistaken. A vulnerable boot1 is what allows someone to install bootmii as boot2. So an update to boot2 doesn't block anything. Boot1 cannot be updated either so any wii capable of installing bootmii as boot2 should always be able to do so regardless of anything Nintendo does after the fact.
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,859
Country
Germany
I'd imagine the coding itself shouldn't be that hard, the question is if there is enough space left, because the available space for the custom code is pretty limited. It is probably easier for the users to convert their DOL to the ELF format.
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,859
Country
Germany
Hm, you are right, I tried converting a DOL to an ELF, with a few changes to the converter to fix some obviously missing parts, but it still doesn't work for some reason. As soon as all the writeups and code are released and I can recompile and test everything I might try adding DOL support (if there is enough space).
 

Fullmetal5

Well-Known Member
OP
Member
Joined
Dec 10, 2017
Messages
105
Trophies
0
Age
25
XP
674
Country
United States
Converting dols to elfs hasn't worked for other exploits like banner bomb for example. I'm not sure what exactly breaks it, I've just been a tester on this, so my knowledge is limited. Native dol support for an exploit would be ideal it possible.

Out of curiosity, why do you want dol loading? Were some old homebrew apps only distributed as dols or something?

My two-cents:
Ideally, more things should just be elf files not dols. It's a much more limited format and I don't really see why people started making putting their homebrew into it. (Besides technical reasons)
 

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,859
Country
Germany
Yes, some homebrews are being distributed as DOL file only and would need to be recompiled to get an ELF file. ELF is indeed superior as it contains more data (and function names and such, unless stripped) and DOLs just contain the raw code and data segments, but there are still DOL files out there and being able to load them would be cool.
Do you know how much space is left for code to be added to the binary? The DOL format is pretty simple so adding support for it shouldn't be too hard, if there is space for the code.

If there isn't, maybe one could compile two different versions, one with ELF and one with DOL loading, and let the user pick, if I can get links or different buttons on the EULA web page to work.

And, is there any ETA for the write-up and the scripts I'd need to convert the compiled network loader to the image file to be embedded into the HTML page?
 
Last edited by leseratte,

Fullmetal5

Well-Known Member
OP
Member
Joined
Dec 10, 2017
Messages
105
Trophies
0
Age
25
XP
674
Country
United States
Yes, some homebrews are being distributed as DOL file only and would need to be recompiled to get an ELF file.
Do you know how much space is left for code to be added to the binary? The DOL format is pretty simple so adding support for it shouldn't be too hard, if there is space for the code.
And, is there any ETA for the write-up and the scripts I'd need to convert the compiled network loader to the image file to be embedded into the HTML page?
An ETA for the writeup is by the end of tomorrow. I have enough time to go back and cleanup some of the hacky or broken things that were used to build the exploit.
As for a space, I never took exact measurements but it's somewhere around 512K give or take a little. I ended up deflate'ing the network loader to get it to fit. Lucky dol is an extremely simple file format and code to load it should be minimal. I'm sure it can fit.
 
Last edited by Fullmetal5,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: Prowl was the autobots inside man... lol