Homebrew WiiU Homebrew Development

  • Thread starter Thread starter deformyer
  • Start date Start date
  • Views Views 189,958
  • Replies Replies 311
  • Likes Likes 24
@Goku Junior
First error fix:
Mini tutorial:

I admit, the tutorial for powerpc-eabi-gcc isn't straight forward, like the python one, so:
Code:
echo "PATH=\$PATH:/cygdrive/c/devkitPro/devkitPPC/bin" >> .bash_profile
source .bash_profile
which powerpc-eabi-gcc

Also, Windows Defender will say that the payload[*].html files are malicious... Don't worry about it. :P

Edit:
Oh, and than test it with, for example:
"python build.py osscreenexamples/template"
second error fix:
Didn't work.
But uhmm.. Just tried making a .bat solution. Just wrote
Code:
python build.py examples\helloworld
pause
into the .bat and let it running. No error message.
Now I have the following inside of www\helloword
View attachment 20846

Is this all right?
I will do a test run, now

EDIT: It froze the image but did not write any text on the screen (if this exploit was supposed to do so).
 
Oh, yeah, it's not finding powerpc-eabi-gcc which is what it needs to compile, I think newer versions of DevKitPro changed the filename, go look and see if that filename exists and if it is then add it to the path (haven't updated to 10 yet but I assume it's the same process, control panel > search "advanced system settings" > load it and click on the button in the bottom right I think says environment variables or something > scroll down to path in that lower part and edit it, add a semicolon at the end to add a new entry to it and paste the path to wherever powerpc-eabi-gcc is. It should've automatically added it though :\ I'd try uninstalling and reinstalling first
 
Thanks both of you :D , now it's working! the problem was the path variable, Devkit seems to don't add the PowerPC-eabi.gcc, I done what you said and now it's working, thank you :) .

EDIT: Now, to send Python commands to the Wii U, I should use the rpc example? I mean, what I need to compile to make the Wii U listen to my RPC commands.
I tried the first time and my Wii U crashed with a black screen with Little dead pixels.

EDIT2: I get it working a Little, I still can't use the RPC but at least the console shows "Invalid RCP command" How can I fix that ?
 
Last edited by Deleted member 342493,
Thanks both of you :D , now it's working! the problem was the path variable, Devkit seems to don't add the PowerPC-eabi.gcc, I done what you said and now it's working, thank you :) .

EDIT: Now, to send Python commands to the Wii U, I should use the rpc example? I mean, what I need to compile to make the Wii U listen to my RPC commands.
I tried the first time and my Wii U crashed with a black screen with Little dead pixels.

EDIT2: I get it working a Little, I still can't use the RPC but at least the console shows "Invalid RCP command" How can I fix that ?

NWP answered the same thing for you in another topic, if you didn't see:
 
Thanks both of you :D , now it's working! the problem was the path variable, Devkit seems to don't add the PowerPC-eabi.gcc, I done what you said and now it's working, thank you :)
Yeah, it doesn't. That's something that costed me some time to figure out as well but I made a video tutorial a while back. You can find in the first post which actually shows adding the correct path to the path system environment variable. Just saying, it was all there already. :P
 
Sorry about all of that, I get a Little (too much :/ ) mad about this things, I just calmed down with this, sorry about all of that xD.
@BullyWiiPlaza I saw your video tutorial, but the path you entered is for Python working in CMD, I used the path you added before asking here for PowerPC-eabi-gcc, but It didn't work, it only worked when I tip Python in CMD and it shows it's versión and all of that stuff.
I apologise again about all of that... but thank you for answering me :D .

EDIT: Sorry @BullyWiiPlaza I just realised that you had entered that path, I know what I did it wrong and it was because I was using this exploit like the 4.1.0/5.0.0 one, they work different and well, that's it... Thanks for your help too :) .
 
Last edited by Deleted member 342493,
homebrew channel now exist? or i just dream that?

--------------------- MERGED ---------------------------

i just want to ask a favor , who can send me a pm and tell me what means exploits and uses and tell me more about wii u hacking more detailed info
thanks
 
exploit = exploitation of a vulnerability.
vulnerability = a bug in the code that can be exploited (see above) to edit the original code and insert your own code.

these "location" where you can write code and make the hardware run it is used to execute specific action to get access to usually restricted memory area, or even better to existing kernel function.

Kernel = kernel is the hardware core, usually not accessible by the end user or even a game, or a program launched on the console. only the "operating system" of the console is supposed to have kernel access, it's used to manage the access right for each application (responsible of blocking some memory addresses, or preventing a program from accessing specific hardware, etc.)

So, with exploiting a vulnerability, you can run your own code to redirect the execution of a program to a place which it shouldn't access.
There are two possibilities with this :
- the vulnerability is located on a "user mode", and you can only access what the current program has right to access (for example, the browser has access to wii controller, but not to USB) so your code can also access only the controller, not usb.

- the vulnerability is located on a "kernel mode", it means you have access to the low level administration right of the console. Your own code will have access to ALL the existing functions.


Often, the hacking is done in multiple layer : first you need an entry point (a bug in the browser that you have access : URL and display pages) providing you user level access to modules that the browser have access (cookies manipulation, cache, etc.).
once you have access the the application accessible module, you need to find a bug (a vulnerability) in what's accessible to see if you can run another exploit, etc.
the purpose being to reach a place where you get full control of the console (kernel access).

Exploits are often a time race, for example if there's a vulnerability in the cookie module of the browser, you need to make the browser crash, but write your own code in the cookie memory before the console delete it due to the crash. Sometime, it's not possible, or random. That's why current hacks are not "stable", sometime it works because the console didn't clean the memory yet, sometime the memory is already not accessible to write your code to it.

What is possible right now : publicly released, only user mode homebrew.
you create your homebrew, and "copy" the code to the browser's vulnerability place.
when the browser run its code to display the URL, it will run your own code instead because it didn't have verification if the code was official or not.
User mode is restricted to what the browser has access too (and is very limited : TV screen output, WiiU Gamepad, mayyyybe the SD but I'm not sure)

Kernel mode hack is still in development/progress and the hackers need to find a stable method to inject their own code which work every time and for every regions.
 
exploit = exploitation of a vulnerability.
vulnerability = a bug in the code that can be exploited (see above) to edit the original code and insert your own code.

these "location" where you can write code and make the hardware run it is used to execute specific action to get access to usually restricted memory area, or even better to existing kernel function.

Kernel = kernel is the hardware core, usually not accessible by the end user or even a game, or a program launched on the console. only the "operating system" of the console is supposed to have kernel access, it's used to manage the access right for each application (responsible of blocking some memory addresses, or preventing a program from accessing specific hardware, etc.)

So, with exploiting a vulnerability, you can run your own code to redirect the execution of a program to a place which it shouldn't access.
There are two possibilities with this :
- the vulnerability is located on a "user mode", and you can only access what the current program has right to access (for example, the browser has access to wii controller, but not to USB) so your code can also access only the controller, not usb.

- the vulnerability is located on a "kernel mode", it means you have access to the low level administration right of the console. Your own code will have access to ALL the existing functions.


Often, the hacking is done in multiple layer : first you need an entry point (a bug in the browser that you have access : URL and display pages) providing you user level access to modules that the browser have access (cookies manipulation, cache, etc.).
once you have access the the application accessible module, you need to find a bug (a vulnerability) in what's accessible to see if you can run another exploit, etc.
the purpose being to reach a place where you get full control of the console (kernel access).

Exploits are often a time race, for example if there's a vulnerability in the cookie module of the browser, you need to make the browser crash, but write your own code in the cookie memory before the console delete it due to the crash. Sometime, it's not possible, or random. That's why current hacks are not "stable", sometime it works because the console didn't clean the memory yet, sometime the memory is already not accessible to write your code to it.

What possible right now : user mode homebrew.
you create your homebrew, and "copy" the code to the browser's vulnerability place.
when the browser run its code to display the URL, it will run your own code instead because it didn't have verification if the code was official or not.
thanks so much buddy now i can understand others trheads :V
 
there are,in pyGecko,a .exe file I can launch in linux?because,if I understand, it is just a python build..,

when I say exe file,I mean a executable file in linux.
 
there are,in pyGecko,a .exe file I can launch in linux?because,if I understand, it is just a python build..,
PyGecko just consist of a couple of functions you can call, not any executable. Just import tcpgecko.py in a python shell and start calling some functions like I show in the thread.
 
Last edited by deformyer,

Site & Scene News

Popular threads in this forum