Jump to content

Hooking functions on iOS jailbreak


nngot44

11 posts in this topic

Recommended Posts

Hello, in this tutorial I will show one of the ways to hook a function. I will be hooking a function from a Unity game.

First you need to find the address at which the beginning of the function is located in real time, this is difficult due to ASLR (address randomization).

First, let's write a method that will return the following address:

// RVA: 0x11FE288 Offset: 0x11FE288 VA: 0x11FE288
    private void Update() { }
  (This is the address and information about the function that is in the compiled game engine)

uint64_t getExecAddr(uint64_t addr, int index)
{
    const struct mach_header* header = _dyld_get_image_header(index);
    if (header == NULL){return 0;}

    uint64_t libLoadAddr = (uint64_t)header;
    uint64_t exec_addr = libLoadAddr + addr;

    return exec_addr;
}

In this example, we are making a method that returns a number of type uint64_t and takes two parameters: the address of the function (for example, the one I gave above) and the library index.

Using the _dyld_get_image_header() method, we get the address from which the library was loaded by its index.

 

How to find the library index? This can be done in two ways: Using the LLDB debugger (image list command) or using another method that we will now write (this method is better than the first one)

uint64_t getLibIndex(const char* que_image)
{
	int i = 0;
	int image_count = _dyld_image_count();

	for(; i < image_count; i++)
	{
		const char* req_image = _dyld_get_image_name(i);

		if(req_image && strcmp(req_image, que_image) == 0)
			{return i;}
	}
	return -1;
}

This method takes a path parameter to the library, we use the _dyld_image_count() method to find out how many libraries are loaded into the game process, then using a loop we compare our path to the library with others, and if the paths match, we return the index.

Okay, there's not much left. Now let's create a pointer to the old function and create a replacement function that will be called instead of the original one:

void (*old_Update)(void *self);

void Update(void *self)
{
 	// "your code here"
  
	old_Update(self);
}

Now let's just make a hook according to a template that can be easily found on the Internet:

%ctor 
{		
	MSHookFunction( (void *)address_to_your_func_with_aslr, (void *)Update, (void **)&old_Update);	
}	

To make it clearer, I will show the full code of my hook:

#include <unistd.h>
#include <dispatch/dispatch.h>
#include <mach-o/dyld.h>
#include <substrate.h>
#include <string.h>

uint64_t getExecAddr(uint64_t addr, int index)
{
    const struct mach_header* header = _dyld_get_image_header(index);
    if (header == NULL){return 0;}

    uint64_t libLoadAddr = (uint64_t)header;
    uint64_t exec_addr = libLoadAddr + addr;

    return exec_addr;
}


uint64_t getLibIndex(const char* que_image)
{
	int i = 0;
	int image_count = _dyld_image_count();

	for(; i < image_count; i++)
	{
		const char* req_image = _dyld_get_image_name(i);

		if(req_image && strcmp(req_image, que_image) == 0)
			{return i;}
	}
	return -1;
}


void (*old_Update)(void *self);

void Update(void *self)
{
	sleep(5);
	old_Update(self);
}


%ctor 
{	
	dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

		sleep(150);

		int index = getLibIndex("/private/var/containers/Bundle/Application/BAE27894-6809-4743-AFFA-C1F6B93195CB/hidenseek.app/Frameworks/UnityFramework.framework/UnityFramework");
		
		uint64_t address = getExecAddr(0x11fe288, index);

		MSHookFunction( (void *)address, (void *)Update, (void **)&old_Update);

	});	

}	

 

This is my test version of the hook, it works great. (dispatch_async I used to wait until all libraries are loaded) In my example, the hook changes the behavior of the program so that when Update() is called, the game slows down for 5 seconds, this is only a beta version and you can add other logic there :)

If you liked the tutorial, please rate it. I will try to answer questions :)

 

 

Updated by nngot44
  • Like 3
  • Thanks 1
  • Informative 1
Link to comment
Share on other sites

3 hours ago, nngot44 said:
/private/var/containers/Bundle/Application/BAE27894-6809-4743-AFFA-C1F6B93195CB/

Have to be careful here if you plan on releasing this tweak. :) This location is dynamic and changes per device & iOS version.

  • Informative 1
Link to comment
Share on other sites

1 minute ago, 34306 said:

Really nice. Have you try this on Dopamine jailbreak? I got some issue while hooking on Dopamine.

 

What kind of issues? I've seen similar reports after converting rootful to rootless with iGameGod.

Link to comment
Share on other sites

Just now, Rook said:

What kind of issues? I've seen similar reports after converting rootful to rootless with iGameGod.

I have no idea, maybe it's Dopamine issue. Opa said on 1.1 he fixed PPLRW but when i tried to hooking (Unity game). It still crash. I have no idea what's going on..
xVY8cNF.jpg

Link to comment
Share on other sites

Just now, 34306 said:

I have no idea, maybe it's Dopamine issue. Opa said on 1.1 he fixed PPLRW but when i tried to hooking (Unity game). It still crash. I have no idea what's going on..
xVY8cNF.jpg

Shouldn't this be an ElleKit related issue rather than Dopamine?

I tried hooks on palera1n rootless and they seem to work fine.

Link to comment
Share on other sites

Just now, Rook said:

Shouldn't this be an ElleKit related issue rather than Dopamine?

I tried hooks on palera1n rootless and they seem to work fine.

Let me update Ellekit. They already have Substitute, Substrate, Libhooker. And Ellekit such a weird thing...

Report back to you later!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below. For more information, please read our Posting Guidelines.
Reply to this topic... Posting Guidelines

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Our picks

    • Sonic Dash Endless Runner v7.10.0 Cheats +4
      Modded/Hacked App: Sonic Dash Endless Runner Game By Sega America
      Bundle ID: com.sega.sonicdash
      iTunes Store Link: https://apps.apple.com/us/app/sonic-dash-endless-runner-game/id582654048?uo=4

       

      Mod Requirements:
      - Non-Jailbroken/Jailed or Jailbroken iPhone/iPad/iPod Touch.
      - Sideloadly / Cydia Impactor or alternatives.
      - A Computer Running Windows/macOS/Linux with iTunes installed.


      Hack Features:
      - Unlimited powerup
      - Unlimted currency
      - Max level
      - Unlock character
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 18 replies
    • Sonic Dash Endless Runner v7.10.0 Cheats +5
      Modded/Hacked App: Sonic Dash Endless Runner Game By Sega America
      Bundle ID: com.sega.sonicdash
      iTunes Store Link: https://apps.apple.com/us/app/sonic-dash-endless-runner-game/id582654048?uo=4

       

      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - Unlimited powerup
      - Unlimted currency
      - Max level
      - Unlock character
      - Unlimted dash meter
        • Informative
        • Agree
        • Haha
        • Thanks
        • Like
      • 17 replies
    • Home Defender - Wang's Story v1.1.4 Cheats +3
      Modded/Hacked App: 屋屋保衛戰 By Chengdu Warrior Tech Limited
      Bundle ID: com.warrior.wxw.ioshw
      iTunes Store Link: https://apps.apple.com/us/app/%E5%B1%8B%E5%B1%8B%E4%BF%9D%E8%A1%9B%E6%88%B0/id6476387304?uo=4

       

      Mod Requirements:
      - Non-Jailbroken/Jailed or Jailbroken iPhone/iPad/iPod Touch.
      - Sideloadly / Cydia Impactor or alternatives.
      - A Computer Running Windows/macOS/Linux with iTunes installed.


      Hack Features:
      - Unlimited currency
      - No cd skill
      - Kill all enemies
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 20 replies
    • Home Defender - Wang's Story v1.1.4 Cheats +3
      Modded/Hacked App: 屋屋保衛戰 By Chengdu Warrior Tech Limited
      Bundle ID: com.warrior.wxw.ioshw
      iTunes Store Link: https://apps.apple.com/us/app/%E5%B1%8B%E5%B1%8B%E4%BF%9D%E8%A1%9B%E6%88%B0/id6476387304?uo=4


      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, ElleKit, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - Unlimited currency
      - No cd skill
      - Kill all enemies
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 36 replies
    • Ninja Survivors Online v1690 Cheats +7
      Modded/Hacked App: Ninja Survivors Online By Puzzle Monsters Inc.
      Bundle ID: com.puzzlemonsters.ninjasurvivors
      iTunes Store Link: https://apps.apple.com/us/app/ninja-survivors-online/id6444254297?uo=4


      Mod Requirements:
      - Non-Jailbroken/Jailed or Jailbroken iPhone/iPad/iPod Touch.
      - Sideloadly / Cydia Impactor or alternatives.
      - A Computer Running Windows/macOS/Linux with iTunes installed.


      Hack Features:
      - Fast move
      - No skills cooldown
      - Fast atk
      - Speed atk x20
      - Auto pick items
      - Skills max level
        • Informative
        • Thanks
        • Like
      • 10 replies
    • Ninja Survivors Online v1690 Cheats +7
      Modded/Hacked App: Ninja Survivors Online By Puzzle Monsters Inc.
      Bundle ID: com.puzzlemonsters.ninjasurvivors
      iTunes Store Link: https://apps.apple.com/us/app/ninja-survivors-online/id6444254297?uo=4


      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - Fast move
      - No skills cooldown
      - Exp x100
      - Fast atk
      - Auto pick items
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 113 replies
    • BiliBili - HD Anime, Videos v2.92.0 Cheats +4
      Modded/Hacked App: BiliBili - HD Anime, Videos By BALABOOM PTE LTD
      Bundle ID: com.bstar.intl
      iTunes Store Link: https://apps.apple.com/vn/app/bilibili-hd-anime-videos/id1548857482?uo=4

       


      Mod Requirements:
      - Non-Jailbroken/Jailed or Jailbroken iPhone/iPad/iPod Touch.
      - Sideloadly / Cydia Impactor or alternatives.
      - A Computer Running Windows/macOS/Linux with iTunes installed.


      Hack Features:
      - No ads
      - Minimize watermark
      - Watch 4k
      - Can download 4k
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 204 replies
    • BiliBili - HD Anime, Videos v2.92.0 Cheats +4
      Modded/Hacked App: BiliBili - HD Anime, Videos By BALABOOM PTE LTD
      Bundle ID: com.bstar.intl
      iTunes Store Link: https://apps.apple.com/vn/app/bilibili-hd-anime-videos/id1548857482?uo=4

       

      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - No ads
      - Minimize watermark
      - Watch 4k
      - Can download 4k
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 83 replies
    • Top Troops: Adventure v1.5.8 Cheats +1
      Modded/Hacked App: Top Troops: Adventure RPG By Zynga Inc.
      Bundle ID: game.socialempiresmerge
      iTunes Store Link: https://apps.apple.com/us/app/top-troops-adventure-rpg/id1574634455?uo=4

      Mod Requirements:
      - Non-Jailbroken/Jailed or Jailbroken iPhone/iPad/iPod Touch.
      - Sideloadly / Cydia Impactor or alternatives.
      - A Computer Running Windows/macOS/Linux with iTunes installed.


      Hack Features:
      - x4 currency earn
        • Informative
        • Agree
        • Thanks
        • Winner
        • Like
      • 121 replies
    • Top Troops v1.5.8 Cheats +2
      Modded/Hacked App: Top Troops: Adventure RPG By Zynga Inc.
      Bundle ID: game.socialempiresmerge
      iTunes Store Link: https://apps.apple.com/us/app/top-troops-adventure-rpg/id1574634455?uo=4


      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - Frozen currency
      - x4 currency earn
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 162 replies
    • Medieval Merge: Epic RPG Games v1.65.0 +2 Cheat
      Modded/Hacked App: Medieval Merge: Epic RPG Games By Pixodust Aplicativos LTDA
      Bundle ID: com.pixodust.games.free.rpg.medieval.merge.puzzle.empire
      iTunes Store Link: https://apps.apple.com/us/app/medieval-merge-epic-rpg-games/id1553126598?uo=4


      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing / or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - Freeze Currencies


      Non-Jailbroken & No Jailbreak required hack(s): https://iosgods.com/forum/79-no-jailbreak-section/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/


      iOS Hack Download Link:

      Hidden Content
      Download Hack







      Installation Instructions:
      STEP 1: Download the .deb Cydia hack file from the link above. Use Safari/Google Chrome or other iOS browsers to download.
      STEP 2: Once the file is downloaded, tap on it and then you will be prompted on whether you want to open the deb with iGameGod or copy to Filza.
      STEP 3: If necessary, tap on the downloaded file and then, you will need to press on 'Install' from the options on your screen.
      STEP 4: Let iGameGod/Filza finish the cheat installation. Make sure it successfully installs, otherwise see the note below.
      STEP 5: If the hack is a Mod Menu — which is usually the case nowadays — the cheat features can be toggled in-game. Some cheats have options that can be enabled from your iDevice settings.
      STEP 6: Turn on the features you want and play the game. You may need to follow further instructions inside the hack's popup in-game.

       

      NOTE: If you have any questions or problems, read our Troubleshooting topic & Frequently Asked Questions & Answers topic. If you still haven't found a solution, post your issue down below and we'll do our best to help! If the hack does work for you, please post your feedback below and help out other fellow members that are encountering issues.


      Credits:
      - AlyssaX64


      Cheat Video/Screenshots:

      N/A
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 257 replies
    • Ninja Must Die v1.0.60 +2 Cheats
      Modded/Hacked App: Ninja Must Die By Pandada Games Limited
      Bundle ID: com.pandadagames.ninja.global
      iTunes Store Link: https://apps.apple.com/us/app/ninja-must-die/id1628517224?uo=4


      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - God Mode 
      - No Cooldown on Skill


      Non-Jailbroken & No Jailbreak required hack(s): https://iosgods.com/forum/79-no-jailbreak-section/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/


      iOS Hack Download Link:

      Hidden Content
      Download Hack







      Installation Instructions:
      STEP 1: Download the .deb Cydia hack file from the link above. Use Safari/Google Chrome or other iOS browsers to download.
      STEP 2: Once the file has downloaded, tap on it and then you will be prompted on whether you want to open the deb with iGameGod or copy it to Filza.
      STEP 3: If necessary, tap on the downloaded file, and then, you will need to press 'Install' from the options on your screen.
      STEP 4: Let iGameGod/Filza finish the cheat installation. Make sure it successfully installs, otherwise see the note below.
      STEP 5: If the hack is a Mod Menu — which is usually the case nowadays — the cheat features can be toggled in-game. Some cheats have options that can be enabled from your iDevice settings.
      STEP 6: Turn on the features you want and play the game. You may need to follow further instructions inside the hack's popup in-game.

       

      NOTE: If you have any questions or problems, read our Troubleshooting topic & Frequently Asked Questions & Answers topic. If you still haven't found a solution, post your issue down below and we'll do our best to help! If the hack does work for you, please post your feedback below and help out other fellow members that are encountering issues.


      Credits:
      - K_K


      Cheat Video/Screenshots:

      N/A
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 54 replies
×
  • Create New...

Important Information

We would like to place cookies on your device to help make this website better. The website cannot give you the best user experience without cookies. You can accept or decline our cookies. You may also adjust your cookie settings. Privacy Policy - Guidelines