What do I need to start making Homebrew for the PS3?

Discussion in 'Help & Support' started by ISAK.M, Oct 12, 2018.

  1. 40
    4
    7
    ISAK.M

    ISAK.M Forum Noob

    Joined:
    May 3, 2018
    Messages:
    40
    Likes Received:
    4
    Trophy Points:
    7
    Gender:
    Male
    Exactly what the title says ^^^
    And also can it be done with C# as programming language?
     
  2. 255
    88
    32
    Agoni212

    Agoni212 Member

    Joined:
    Mar 16, 2018
    Messages:
    255
    Likes Received:
    88
    Trophy Points:
    32
    Gender:
    Male
    Its not that easy as you think its very hard u need to know the programming very good
     
  3. 40
    4
    7
    ISAK.M

    ISAK.M Forum Noob

    Joined:
    May 3, 2018
    Messages:
    40
    Likes Received:
    4
    Trophy Points:
    7
    Gender:
    Male
    But just tell me how, I want to learn a little bit here. Have some fun
     
  4. 40
    4
    7
    ISAK.M

    ISAK.M Forum Noob

    Joined:
    May 3, 2018
    Messages:
    40
    Likes Received:
    4
    Trophy Points:
    7
    Gender:
    Male
    Bump, PLEASEEEE, I just wanna make a little small thing or something
     
  5. 58
    18
    12
    Cypher_CG89

    Cypher_CG89 Forum Noob

    Joined:
    Jul 30, 2018
    Messages:
    58
    Likes Received:
    18
    Trophy Points:
    12
    Gender:
    Male
    Occupation:
    Full-time Trouble Maker
    Location:
    North East, England, UK
    it would be easier for you to use Google to search for material to read. Try searching for 'programing for beginners' or 'C+', 'C++' 'c#' all with for beginners added. The post required to explain stuff like this would be massive. and take hours to write to explain even the basics of programming languages.
     
  6. 2,266
    3,006
    372
    aldostools

    aldostools Developer Developer

    Joined:
    Oct 30, 2014
    Messages:
    2,266
    Likes Received:
    3,006
    Trophy Points:
    372
    To start making homebrews you will need:

    1- Very important: A good background in software development (specially in C/C++).
    I think it is possible to use C# or its IDE, however most of the examples that you will find in the Internet are mainly for C/C++.
    2- The tools (compiler, PS3 SDK, text/hex editors, ps3tools like scetool, ps3 keys, etc)
    3- Examples of source code from other devs (e.g. Estwald, deank, Zar, andoma, flat_z, mysis, jjolano, etc.) and read a lot of articles from http://www.psdevwiki.com/ps3/
    4- A PS3 console with CFW (DEX is suggested, although I only have used CEX) and a PC in the same network
    5- Free time... a lot! Also enthusiasm and dedication.
    6- Some friends with knowledge to ask questions in skype, whatsapp or discord ;)

    You will need a design of what you want to create. There are different kind of homebrews (tools, games, mods, apps, etc.) and different ways to implement them (as a sprx plugin, EBOOT, via browser, LUA, etc.)

    I follow various PS3 devs in github. You can find excellent resources in their repos.

    Here are some good examples:
    https://github.com/Estwald?tab=repositories
    https://github.com/Joonie86?tab=repositories
    https://github.com/Zarh/ManaGunZ
    http://deanbg.com/sMAN_1.12.zip
    http://deanbg.com/webMAN_1.47.zip
    https://github.com/twinaphex/multiman-slim (src of old version of multiMAN)
    https://github.com/Dnawrkshp/ArtemisPS3
    https://github.com/andreus-sebes/xmb-manager-plus-installer
    https://github.com/moh-sakhaii/Moh-s-Open-manager (very old app but good example)
    https://github.com/drizzt/GaiaManager (another old example of a backup manager)
    https://github.com/aldostools/webMAN-MOD

    How to build

    Requirements for Windows:
    • git, clone this repository with the following command: git clone https://github.com/aldostools/webMAN-MOD.git
    • Official PS3 SDK v3.40 or 4.00 complete leaked version, google is your friend to find it
    • GCC (for Windows MinGW with mingw32-base will be fine) or Cygwin (x86/x64)
    • Open Source PSL1GHT SDK to compile prepNTFS and PKG Updater only
    Requirements for GNU/Linux:
    • An x86 linux distribution, Fedora 20 is tested working
    • git, clone this repository with the following command: git clone https://github.com/aldostools/webMAN-MOD.git
    • Official PS3 SDK v400.001 leaked version
    • Official Cell OS Lv-2 leaked toolchain (a 4.1M patched GCC 4.1.1 version)
    • wine for the missing linux tools
    • A compiled Scetool binary, ps3 keys
    • Open Source PSL1GHT SDK to compile prepNTFS and PKG Updater only

    TIP: Generally it is much more easier to modify gradually an existing project than start one from scratch.
     
    Last edited: Oct 13, 2018
    Zazenora, ISAK.M, unseen and 4 others like this.
  7. 40
    4
    7
    ISAK.M

    ISAK.M Forum Noob

    Joined:
    May 3, 2018
    Messages:
    40
    Likes Received:
    4
    Trophy Points:
    7
    Gender:
    Male
    Well I guess ill give it a go, how much harder then regular PC programming would you say it is? By reading this I pretty much understand that the PS3XPLOIT Team knows a lot about how to program and they have dedicated alot of time in doing this simple but advanced exploit, but my question is how long time did it take for them to make the exploit (V1,V2) and also how many people does the team consist of?
     
  8. 7,340
    5,958
    622
    bguerville

    bguerville Moderator Developer

    Joined:
    Feb 25, 2015
    Messages:
    7,340
    Likes Received:
    5,958
    Trophy Points:
    622
    Location:
    Earth
    Development on ps3 is harder & takes longer than on PC for a number of reasons.
    On PC, loads of libraries are available, same for documentation, examples etc.. A quick search & you get answers for most questions.
    On PS3, all that is limited. Libraries need to be ported (the source code adapted to be recompiled & used according to sdk standards), info cannot be found anywhere at all & the official sdk documentation is succinct on many topics. Btw the official sdk is licensed by s#ny (expensive license).
    An unofficial open source sdk exists thanks to our community devs. It is called psl1ght, it is very useful & it avoids having to deal with licensing issues however don't expect much in terms of documentation. Some devs prefer to use the official sdk though, especially as psl1ght doesn't support sprx executable file compiling. It will be up to you to choose what sdk to use.

    Even debugging is more painful & you will need a ps3 on DEX mode to be able to debug anything you write. The official sdk comes with a debugger called ProDG & the only alternative is IDA. Talking of which, you will need to get a copy of IDA 6.x, it's essential to inspect binary files.

    C# is not really usable on ps3, there is no native Mono support in the ps3 os.
    You need to write homebrews in C/C++.

    Developing software & hacking are 2 very different things, hacking requires good development skills whereas standard software development does not require any hacking knowledge at all.

    As to writing ps3 exploits, it would require you to learn ppc (the equivalent of x86 assembly on PowerPC architectures), return oriented programming & you would need to be very familiar with BSD architecture & kernel as well.

    You asked how long it took us to produce v1 & v2 & how many people were involved.
    Mostly, 3 people were involved in the v1-v3 development process (all the steps from research to release in each case).
    I write the Javascript & the ROP framework
    esc0rtd3w does most of the testing (loads of work!).
    Habib usually helps with reverse engineering. He found the HAN vulnerability for instance & he wrote the ps3xploit resigner app.
    On top, the 3 of us did much research & debugging too.
    Collectively, we spent many hundreds of hours on v1/v2 & many more yet on v3. We do not count the hours but after a year of development & the 4.0 release coming soon, figures must be closer to a few thousands collective hours.

    To get a better idea of what awaits you, you could start off with the primer for ps3 exploitation that @esc0rtd3w put together months ago (with videos/files) so some people could learn how to rop on ps3. Unfortunately, as far as we know, not a single person has used it properly yet, you could be the 1st!

    If you are still interested after reading this post & are not afraid of putting in hard work/long hours, community devs are around if you need more help & guidance, I see Aldo already chimed in. ;)
     
    Last edited: Oct 15, 2018 at 2:30 AM
  9. 156
    54
    57
    Louay

    Louay Member

    Joined:
    Jan 23, 2017
    Messages:
    156
    Likes Received:
    54
    Trophy Points:
    57
    Gender:
    Male
    Occupation:
    College student
    Location:
    Tunisie
    Home Page:
    sorry for my question @bguerville but last year same thing happens for 4.81 ofw and devs say you must stay in 4.81 for your safty and you make the exploit work on 4.82 can you devs make it work on 4.83 or renew the 2 exploit that trigger rop which sony has block them ??
     
  10. 7,340
    5,958
    622
    bguerville

    bguerville Moderator Developer

    Joined:
    Feb 25, 2015
    Messages:
    7,340
    Likes Received:
    5,958
    Trophy Points:
    622
    Location:
    Earth
    It's not at all the same situation as last year & our recommendation not to update is also given for very different reasons.

    Anyway, you asked if we can find a replacement exploit for 4.83 & the answer is yes, most likely. And others could too.
    However I have no idea how long it will take, days, weeks, even months? It will depend on various factors.
    Our longer term objective remains a kernel exploit for 4.83 & to use a kexploit we will need to be able to trigger rop chains. Consequently, replacing the patched webkit exploit will be a priority for us, no matter what .

    Having said that, we have a 4.0 update to finish/test/release before we can start looking properly for a new wk exploit implementation. It's lucky we already had compiled a list of UAF candidates that might work out, it will help.
     
    Last edited: Oct 13, 2018
    STLcardsWS likes this.
  11. 7,523
    6,355
    747
    STLcardsWS

    STLcardsWS Administrator

    Joined:
    Sep 18, 2014
    Messages:
    7,523
    Likes Received:
    6,355
    Trophy Points:
    747
    Yea very different.
    PS3Xploit hack first came to public in v4.81, we seen a firmware update days later (usually when you see this that means something has been patched) However, it just happened to be a scheduled maintenance update that was planned by sony and had nothing to do with the exploit. However when something like that goes live it must be investigated and with exploit still early the only ones who can verify was the team as it was their work and they knew what was patched and not, but until warnings have to be applied. Also 4.82 did not have a DEX (debug) firmware leak out to the public which ended up giving additional features for HAN. But this later trickled to the public months later.

    but even if 4.83 get solved there would still need to be a DEX firmware surface to replicate all features of HAN. if i have my own understanding correct :)

    So those were some of the reasons for warnings to stay on 4.81 at first. Compared to now.. Where now it now confirmed to be patched at least partially patched..
     
    bguerville likes this.
  12. 7,340
    5,958
    622
    bguerville

    bguerville Moderator Developer

    Joined:
    Feb 25, 2015
    Messages:
    7,340
    Likes Received:
    5,958
    Trophy Points:
    622
    Location:
    Earth
    Thanks for the details @STLcardsWS. ;)
    I was being lazy when I should have added all this to my post for the sake of clarity.

    And you are correct, a DEX 4.83 build of explore_plugin.sprx is needed to bring the Pkg Manager back.
    Although, if we could not get a DEX PUP we could make an offline tool to launch pkg installations & in effect replace the Pkg Manager.. It would maybe not be as practical but it would be effective & quite easy to make using the new 4.0 API.
    We are not there yet, the new webkit exploit comes first, so we will see...
     
    Last edited: Oct 13, 2018
    Zazenora and STLcardsWS like this.
  13. 7,523
    6,355
    747
    STLcardsWS

    STLcardsWS Administrator

    Joined:
    Sep 18, 2014
    Messages:
    7,523
    Likes Received:
    6,355
    Trophy Points:
    747
    Another good tip, if your new to the PS3 and need a quick crash course of various topics and tips

    Take a look at this link, lots of great post that are very informative ..
    http://www.psx-place.com/search/32433326/
     
  14. 191
    55
    32
    ayassinsayed

    ayassinsayed Member

    Joined:
    Mar 16, 2018
    Messages:
    191
    Likes Received:
    55
    Trophy Points:
    32
    Gender:
    Male
    @bguerville what did u mean we already had compiled a list of UAF candidates that might work out? Did is new tool u compiled and it will release on 4.0 or u mean old tool we have ?


    Sent from my iPhone using Tapatalk
     
  15. 7,523
    6,355
    747
    STLcardsWS

    STLcardsWS Administrator

    Joined:
    Sep 18, 2014
    Messages:
    7,523
    Likes Received:
    6,355
    Trophy Points:
    747
    Means they have prospects of ways they can do something on 4.83 (candidates) nothing certain TIME will tell :)
     
    ayassinsayed likes this.
  16. 7,340
    5,958
    622
    bguerville

    bguerville Moderator Developer

    Joined:
    Feb 25, 2015
    Messages:
    7,340
    Likes Received:
    5,958
    Trophy Points:
    622
    Location:
    Earth
    It's like STLcardsWS said.
    UAF means "Use After Free", a term used to describe a certain type of crashes that a program can experience. A UAF is basically a "vulnerability" in an application which might be exploitable in specific conditions to serve a purpose.
    However all vulnerabilities do not lead to exploitation, each vulnerability needs to be investigated individually & thoroughly until one is found to be exploitable. Then code must be written to take advantage of the findings
     
    Cypher_CG89 and aldostools like this.
  17. 40
    4
    7
    ISAK.M

    ISAK.M Forum Noob

    Joined:
    May 3, 2018
    Messages:
    40
    Likes Received:
    4
    Trophy Points:
    7
    Gender:
    Male
    So in short if a learn C or C++, I have an SDK and a DEX Machine, I can start making stuff?
    The reason for why I asked about C# programming is beacuse in school we are going to start learning that soon (I asked my teacher) and I thought it would fit to be able to use that for my PS3 too, to like show off some dev skills here ;), but I guess thats not going to happen. But then how similar are C, C++ and C#, my teacher said we would learn C# beacuse it was "easier" or something like that and its like the successor to C++, it has better syntax etc. Is this true?
    Also I have no idea what ROP is, could you like explain that, in short terms?
    EDIT: I have a CECH2003A with Rebug 4.82.2 REX that is on DEX, so I dont have a real DECH20XX, but does DEX effectively "make" it a debug unit?
     
    Last edited: Oct 15, 2018 at 3:18 AM
  18. 1,074
    1,210
    272
    pink1

    pink1 Moderator Developer

    Joined:
    Feb 25, 2015
    Messages:
    1,074
    Likes Received:
    1,210
    Trophy Points:
    272
    Gender:
    Male
    C# is good for pc apps it's what I use on for all of my tools it can also be used for ps4 apps using unity. C/C++ is a bit trickier but I think is a better first langue to learn because leaning C# if you know C/C++ is going to be really easy, going from C# to C/C++ will still be a challenge. I have a simple text based game in C++ I made for the ps3 that you may have fun playing with.
     
  19. 40
    4
    7
    ISAK.M

    ISAK.M Forum Noob

    Joined:
    May 3, 2018
    Messages:
    40
    Likes Received:
    4
    Trophy Points:
    7
    Gender:
    Male
    Thanks for the reply, I though about starting with something reeeaallly simple like a snake game, but thanks for the example game anyway, can I edit the game as much as I want?
    Ill start learning C++ then.
     
  20. 1,074
    1,210
    272
    pink1

    pink1 Moderator Developer

    Joined:
    Feb 25, 2015
    Messages:
    1,074
    Likes Received:
    1,210
    Trophy Points:
    272
    Gender:
    Male
    Yeah you can edit it any way you'd like, it can even be used as a base for something more. I'm still learning c++ slowly & that's something I made to show myself I could..
    I wish I would have learned c++ first. If you need any help with c# I'd be happy to lend a hand.
     
    DeViL303 and ISAK.M like this.

Share This Page