Hacking RELEASE AutoIPS sig Patcher

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,184
Trophies
2
XP
33,715
Country
Mexico
I will try this out on Gentoo later today with different Atmosphere builds, will see how it behaves on different versions.
I have two questions, mrdude:
  1. Would you mind if I include a link to your AutoIPS script into the OP of the fss0 sigpatches thread?
  2. What patches does this script actually create IPS for?
    Does it make it for all three, FS, ES and Loader, or only for some of those, specifically?
  3. I noticed that you mention fusee-secondary specifically. I assume the IPS patches created apply only for fss0, or do they apply for fusee-primary as well?
 
Last edited by ShadowOne333,

mathew77

Lovin' life.
Member
Joined
Jan 19, 2019
Messages
1,185
Trophies
0
Age
47
XP
3,674
Country
Kazakhstan
so you shouldn't get any issues.
Hmm, got this issue:
Code:
\python Find
byte.py
Traceback (most recent call last):
  File "Findbyte.py", line 7, in <module>
    from bitstring import ConstBitStream
ModuleNotFoundError: No module named 'bitstring'
Any advices, please?
 
Last edited by mathew77,

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,184
Trophies
2
XP
33,715
Country
Mexico
Hmm, got this issue:
Code:
\python Find
byte.py
Traceback (most recent call last):
  File "Findbyte.py", line 7, in <module>
    from bitstring import ConstBitStream
ModuleNotFoundError: No module named 'bitstring'
Any advice, please?
Are you using Windows or Linux?
You might need to do a pip install bitstring in order for it to work properly.
 
  • Like
Reactions: mathew77

mrdude

Developer
OP
Developer
Joined
Dec 11, 2015
Messages
3,071
Trophies
1
Age
56
XP
8,227
I will try this out on Gentoo later today with different Atmosphere builds, will see how it behaves on different versions.
I have two questions, mrdude:
  1. Would you mind if I include a link to your AutoIPS script into the OP of the fss0 sigpatches thread?
  2. What patches does this script actually create IPS for?
    Does it make it for all three, FS, ES and Loader, or only for some of those, specifically?
  3. I noticed that you mention fusee-secondary specifically. I assume the IPS patches created apply only for fss0, or do they apply for fusee-primary as well?

You can post it wherever you want. Also it's just for Loader.kip in fusee-secondary - the python files can be modded though to make it compatible with other patches and files. I won't be messing about anymore with it though, as I said in another post - it was just a POC to show that it's pretty easy to make a program to make IPS patches automatically. It won't work on Atmosphere 12.0 and below (maybe some higher - I never checked all versions), because the Loader.kip has slightly different Arm64 instructions - if you decompile the unpacked Loader.kip in IDA Pro, you can trace the sub routine by jumping to address shown in the IPS patch and see what instruction gets patched. The hex is slightly different on older versions such as 12.0 - I never added them to the python file - but it's very easy to do that if anyone wanted to.
 
Last edited by mrdude,

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,184
Trophies
2
XP
33,715
Country
Mexico
You can post it wherever you want. Also it's just for Loader.kip in fusee-secondary - the python files can be modded though to make it compatible with other patches and files. I won't be messing about anymore with it though, as I said in another post - it was just a POC to show that it's pretty easy to make a program to make IPS patches automatically. It won't work on Atmosphere 11.0 and below (maybe some higher - I never checked all versions), because the Loader.kip has slightly different Arm64 instructions - if you decompile the unpacked Loader.kip in IDA Pro, you can trace the sub routine by jumping to address shown in the IPS patch and see what instruction gets patched. The hex is slightly different on older versions such as 11.0 - I never added them to the python file - but it's very easy to do that if anyone wanted to.
Awesome, thanks for the info.
I will add the link to the script to the fss0 sigpatch thread then :)
 

mrdude

Developer
OP
Developer
Joined
Dec 11, 2015
Messages
3,071
Trophies
1
Age
56
XP
8,227
First post updated - some error checks added, and some small fixes.

Info - supports Atmospher v13 and above, for lower versions (12 + 11) - if anyone wants to mod you can do it by editing findbyte.py.

Current version looks for this byte pattern:
0x01c0be121f00016b
Patches to this
0x01c0be121f00006b

V12 (not impemented - but you can do this yourself, you would look for this byte pattern and mod to the one below.
0x003C00121F280071
0x003C00121FFC0371
 

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,184
Trophies
2
XP
33,715
Country
Mexico
First post updated - some error checks added, and some small fixes.

Info - supports Atmospher v13 and above, for lower versions (12 + 11) - if anyone wants to mod you can do it by editing findbyte.py.

Current version looks for this byte pattern:
0x01c0be121f00016b
Patches to this
0x01c0be121f00006b

V12 (not impemented - but you can do this yourself, you would look for this byte pattern and mod to the one below.
0x003C00121F280071
0x003C00121FFC0371
Awesome! Will update the download i got with the new one, then will start testing haha
You mentioned it's only for Loader patches.
Just out of curiosity, haven't Loader patches been the only one modified throughout the last versions of Atmosphere post 10.0.0? iirc ES and FS haven't been updated, or have they?
 

mrdude

Developer
OP
Developer
Joined
Dec 11, 2015
Messages
3,071
Trophies
1
Age
56
XP
8,227
Awesome! Will update the download i got with the new one, then will start testing haha
You mentioned it's only for Loader patches.
Just out of curiosity, haven't Loader patches been the only one modified throughout the last versions of Atmosphere post 10.0.0? iirc ES and FS haven't been updated, or have they?
I've no idea - I use SXOS, I just started looking at these IPS patches the other day and wondered what they did. Probably you are best asking someone that knows about such things - maybe on Atmosphere github page or one of the scene devs?
 
  • Like
Reactions: ShadowOne333

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,184
Trophies
2
XP
33,715
Country
Mexico
Does it work on linux?
Glad you asked.

@mrdead here's a version of AutoIPS with a 32bit Linux compiled hactool, and also a quick bash script I made for Linux users.
So now you can also create the IPS patches in Linux, if you so desire :)

Just remember, you'll need Python 3.X and also Bitstring installed in order for the scripts to run properly.
Simply run
Code:
./AutoIPS.sh
in terminal with the proper files in place, and it will create the proper output.
 

Attachments

  • AutoIPS.zip
    385.2 KB · Views: 289

ShadowOne333

QVID PRO QVO
Editorial Team
Joined
Jan 17, 2013
Messages
12,184
Trophies
2
XP
33,715
Country
Mexico
cool, ran it and got an IPS file which had the same filename as the latest file in the sigpatches download.
so I'm guessing it worked, and normally I would just copy this to
/atmosphere/kip_patches/loader_patches
and all would be good?
If you are using fusee-primary, then yeah.
For fusee-secondary, you simply add the text you get after "Add to Patches.ini" in terminal/cmd.

Yes if you have hactool for linux (which you can compile yourself if you don't), and python3 - you will need to enter the commands manually into terminal, or create a bash script (see the batch file I added for windows).
See my message a couple posts above :P
 
  • Like
Reactions: mrdude

iGom

Well-Known Member
Newcomer
Joined
Jul 5, 2019
Messages
57
Trophies
0
XP
313
Country
United Kingdom
Glad you asked.

@mrdead here's a version of AutoIPS with a 32bit Linux compiled hactool, and also a quick bash script I made for Linux users.
So now you can also create the IPS patches in Linux, if you so desire :)

Just remember, you'll need Python 3.X and also Bitstring installed in order for the scripts to run properly.
Simply run
Code:
./AutoIPS.sh
in terminal with the proper files in place, and it will create the proper output.
Thanks a lot!

Sent from my SM-N960F using Tapatalk
 
  • Like
Reactions: ShadowOne333

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Maximumbeans @ Maximumbeans: butte