DacoTaco / priiloader

A Wii homebrew application that can prevent and fix some user level bricks
GNU General Public License v2.0
544 stars 101 forks source link

Wiimmfi patch v2: Cleanup & security fix #255

Closed Leseratte10 closed 4 years ago

Leseratte10 commented 4 years ago

Update the Wiimmfi patch to v2. Some cleanup, and a small security fix for yet another stupid Nintendo bug.

So far I have tested it on 4.3, in all four system menu and disc regions. I'd appreciate if people could test this version with some of the other regions / firmware versions again.

To everyone: These changes require commit dbe303131e5b2cc73c5db25e68c3f1667258189c to work reliably, so if you want to test the hacks_hash.ini from this PR, please use the Priiloader test build in #254 and NOT Priiloader 0.9 beta 4.

DacoTaco commented 4 years ago

what was this nintendo bug anyway?

Leseratte10 commented 4 years ago

I'm not sure if it'd be a good idea to make the exact details known yet. Very vaguely, they didn't validate some data (that a user or an attacker could potentially modify) that they really should have validated.

Leseratte10 commented 4 years ago

Okay, I have now tested all four versions of the 4.3 menu (4.3E, 4.3U, 4.3J, 4.3K) with their corresponding disc region; and they all worked without any problems.

I didn't test all the other versions (4.1, 4.2, Mini) again, but I did confirm all the offsets again with a calculator so these should all be correct and working as well. I believe this should now be ready to be merged and packaged into beta 5, and then shortly after that it can probably go in 0.9 final.

Leseratte10 commented 4 years ago

There might be yet another security-related fix I need to add to the Wiimmfi patch... Damn it, when I had the idea for a Priiloader Wiimmfi patch last year I didn't think it would take this long ...

DacoTaco commented 4 years ago

i know it probably won't happen, but maybe post the source on some source control so users can review and help you fix all the issues & security issues.