132w ago - Update: Chinese PlayStation 3 developer xoeo at A9VG.com has now released a working PSGroove payload to spoof PS3 Firmware version 3.15 / 3.41 to 3.50 along with some PSGroove hex codes, as follows:
Today ecosystem_mod at PSX-Scene.com (linked above) has posted about a PSGroove PL3 payload project he is working on that attempts to fake / spoof PS3 Firmware 3.41 to version 3.50 in hopes of successfully connecting to PSN.
To quote: I have made a payload that spoofs version to 3.50. It works by capturing VSH code in the moment after it decrypts index.dat.
Unluckily, it is not enough to connect to the PSN, it still refuses to connect. I have only faked the version but there are other numbers, such as release numbers.
I don't know what these numbers would be on 3.50. You can try by modifying the payload with an hexeditor and maybe someone finds the proper numbers.
Techincal info for geeks: Index.dat is the encrypted version of version.txt. After decryption, index.dat is a 20 bytes sha1 followed by 12 bytes of padding, followed by a content identical to that of version.txt.
My payload works by hooking the memcmp that the vsh performs with the sha1 to a syscall, the syscall 10, which is implemented in the payload to fill the buffer with other data.
The payload is just a PL3 default payload with that syscall 10 added and two additional patches added to memory_patch_table_1 (PATCH_INST(0x190C90, li %r11, 10) and PATCH_INST(0x190C94, sc)), and converted to the port1_config_descriptor.bin format.
Only for 3.41. Have fun.
Second version now it also fakes the auth/revision code from 45039 to 46135, which is the supossed one for 3.50. This value was also hardcoded in vsh.self, so two additional patches are done to change that string in vsh.self too. If you are gonna change auth number, remember that you must update that patch too, or you will get a beatiful red screen.
Also it now patches a syscall that gets the SDK version of a process, the patch only fakes the one for vsh. Vsh calls this function before entering the PSN.
Despite all of this, PSN still doesn't connect, but now there is a different behavior: before it told you to update and if you answered yes, you could go through the update process. Now it still tells you to update, but if you click yes, then it tells you that you are on latest version and doesn't let you to update.
I post binary and the three source files that must replace/add to the PL3 one.
Didn't want to release source because I've commited some lazyness. But anyways, here you have the only two files modified by latest, as downloaded some hours ago, PL3.
You can see the two additional patches in memory_patching.h.S. I used direct offsets instead of putting symbols in firmware_symbols.h because I was damn lazy. To complete the payload you need to put the firmware version data here (in default_payload.S):
.space 0x2D0, 0x99
Replacing the space 0x2D0, 0x99 with the data, which should be 0x2D0 size.
I was lazy again and I just pasted the proper content after compilation with an hex editor.
As for the other question, dunno if games with higher version work without sfo editing, but I think they should work. Anyways, real purpose of this is to at least allow tests to be done.
It serves the purpose of faking version. It is a matter of time to check if it leads to more things.
Update: 2.01, small bugfix (cmpwi != cmpw), still no luck with PSN.
Stay tuned for more PS3 Hacks and PS3 CFW news, follow us on Twitter and be sure to drop by the PS3 Hacks and PS3 Custom Firmware Forums for the latest PlayStation 3 scene updates and homebrew releases!
Totally understood boss. Perhaps it doesn't need to be sub forums... Just threads... even one thread per device is helping out a lot. I know it is already like that in thread such as the ipod/rockbox one, but all others are crumbled into whatever latest news thread.
I think the news threads are excellent usage for getting the latest on the scene, but once the particular file/payload is released, then they should flow to separated thread regarding their own device, so questions such as "the payload is not working", "which payload you are running? which device?", "can you release for this device" will not start flooding the newsgroup.
When one checks to know that a new payload is been release for public, then one only need to go to their device thread, and see if there is build/files posting up in the first message. If they have any new issue with the new release regarding their own device, they can post there, not posting to the news thread.
I know any change will be a lot of work, and I understand totally that it might not work as ideal as we think (it never will be as ideal). It is just a thought, if not feasible it's ok. Thanks for all the work still, boss.
I wouldn't mind helping with conversions or some of the back-end work however I wouldn't want to be a mod. I know enough about mysql and php to help out but as far as programing and hardware I am pretty much mute (ps3 wise)
The problem with that great idea is simply that nobody would ever update them... so we'd be stuck with a bunch of dead/outdated boards in less than a week at the rapid pace things are changing in the PS3 scene.
As it is I'm investing 12-16 hours a day here since late August when the news first broke, so unfortunately I can't add any more to my own plate and CJPC keeps busy maintaining the site's backend and databases along with real-life stuff, so aside from about 6-8 others who bother to attach file updates here there just isn't the manpower available for such a task.
We are considering the "lazy way out" by moving to vBulletin 4 which allows users to post their own news, file updates and blogs to help offset the workload and be able to deliver quicker news as all the Admins would then have to do is "move" existing threads to the front page similar to other sites... but making the move itself is a lot of work (tons of converting and importing) so it's still in the discussion phase at the moment.
I think since the scene is getting more mature, it is time for all the development to consolidate. Boss, it might be a good idea to have separate post for each kinda of device, so there won't be 100 msg requesting the same payload on diff device. Under it's device, the first post will be updated with different version of payload, each mentioning what most people want to know: 1.) what it does 2.) what is it different from the previous version 3.) another side notes. Now for other non-mainstream hex/files created(compiled) by users, get it to another thread/post/sub-forum. That sure will clean up the board a lot. Something similar to what it is in Open Manager Mod sub forums would be great (very easy to keep track)
It is very hard to keep track with all the 100+ hex that comes up everyday. Again, thanks for all the hard work of different people in the scene. You make the scene progress and progress fast!