Jump to content

11 posts in this topic

Recommended Posts

Updated (edited)

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 4
  • Thanks 1
  • Informative 1
Posted

Very good tutorial for beginner, easy to read and detailed

Thank you for posting

Posted
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
Posted

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

 

Posted
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.

Posted
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

Posted
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.

Posted
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!

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Our picks

    • Dice Lords v1.0.3 [ +5 Cheats ] Currency Max
      Modded/Hacked App: Dice Lords By Voodoo
      Bundle ID: com.oxvgames.dicelords
      App Store Link: https://apps.apple.com/us/app/dice-lords/id6743435206?uo=4

      🤩 Hack Features

      - ADS NO / Rewards Free
      - Unlimited Gems Green
      - Unlimited Gems Red
      - Unlimited Coins
      - DMG / Roll Dice
      • 0 replies
    • Dice Lords v1.0.3 [ +5 Jailed ] Currency Max
      Modded/Hacked App: Dice Lords By Voodoo
      Bundle ID: com.oxvgames.dicelords
      App Store Link: https://apps.apple.com/us/app/dice-lords/id6743435206?uo=4

      🤩 Hack Features

      - ADS NO / Rewards Free
      - Unlimited Gems Green
      - Unlimited Gems Red
      - Unlimited Coins
      - DMG / Roll Dice
      • 0 replies
    • Super Stylist Fashion Makeover Cheats v3.7.6 +1
      Modded/Hacked App: Super Stylist Fashion Makeover By CRAZY STYLE LTD
      Bundle ID: com.babyeducationtoys.fashionstyle
      iTunes Store Link: https://apps.apple.com/us/app/super-stylist-fashion-makeover/id1441648201?uo=4


      Hack Features:
      - Free Store (not iAP)


      Non-Jailbroken & No Jailbreak required hack(s): https://iosgods.com/topic/112404-super-stylist-fashion-makeover-v352-jailed-cheats-1/


      iOS Hack Download Link: https://iosgods.com/topic/190368-super-stylist-fashion-makeover-cheats-v352-1/
        • Agree
        • Thanks
        • Like
      • 26 replies
    • Toram Online v4.1.11 - [ Custom Move Speed & More ]
      Modded/Hacked App: Toram Online By ASOBIMO,Inc.
      Bundle ID: com.asobimo.toramonline
      iTunes Store Link: https://itunes.apple.com/us/app/toram-online/id988683886?mt=8&uo=4&at=1010lce4
       

      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iFile / Filza / iFunBox / iTools or any other file managers for iOS.
      - Cydia Substrate or Substitute.
      - PreferenceLoader (from Cydia or Sileo).


      Hack Features:
      - Custom Move Speed
      - God Mode 
      - Fast Attack Speed
      - Fast Cast Speed
      - Always Critical Chance
      - Never Miss Hit 
      - Mobs/Bosses Can't Avoid & Guard 
      - Quick Draw
      - Armor Break
      - Magic Wall - Stun + Full Map Hack 
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 2,625 replies
    • Candy Crush Saga v1.316.0 Jailed Cheats +3
      Modded/Hacked App: Candy Crush Saga By King.com Limited
      Bundle ID: com.midasplayer.apps.candycrushsaga
      iTunes Store Link: https://apps.apple.com/us/app/candy-crush-saga/id553834731?uo=4


      Hack Features:
      - Infinite Life
      - Infinite Booster
      - Infinite Move


      Jailbreak required hack(s): https://iosgods.com/topic/190447-candy-crush-saga-cheats-v12941-3/


      iOS Hack Download IPA Link: https://iosgods.com/topic/190448-candy-crush-saga-v12941-jailed-cheats-3/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 169 replies
    • GardenScapes Cheats v9.2.1 +5
      Modded/Hacked App: Gardenscapes By Playrix Games
      Bundle ID: com.playrix.gardenscapes-m3-ios
      iTunes Store Link: https://itunes.apple.com/us/app/gardenscapes/id1105855019?mt=8&uo=4&at=1010lce4



      Hack Features:
      - Infinite Moves
      - Inifnite Boosters (Won't subtract when use)
      - Infinite Lives
      - Infinite Coins (Spend some/ Get some) - Not recommended cause sometimes it will bug your gameplay
      - Infinite Stars (Complete tasks without needing stars) - GAMEBREAKING FOR SURE  



      Hack Download Link: https://iosgods.com/topic/75340-arm64-gardenscapes-cheats-v280-5-vip/


      Credits:
      - @Laxus
      - @RudePerson For Inspiring Me
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 2,959 replies
    • BASEBALL 9 v3.8.5 +1 Cheats for Jailed iDevices!
      Modded/Hacked App: BASEBALL 9 By playus soft
      Bundle ID: us.kr.baseballnine
      App Store Link: https://apps.apple.com/us/app/baseball-9/id1340866223?uo=4

       

      📌 Mod Requirements

      - Non-Jailbroken/Jailed or Jailbroken iPhone or iPad.
      - Sideloadly or alternatives.
      - Computer running Windows/macOS/Linux with iTunes installed.

       

      🤩 Hack Features

      - Infinite Currencies

       

      Jailbroken Hack: https://iosgods.com/topic/136094-baseball-9-cheats-v371-1/

       

      ⬇️ iOS Hack Download IPA Link: https://iosgods.com/topic/82460-baseball-9-v371-1-cheats-for-jailed-idevices/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 1,584 replies
    • Dummynation Cheats v3.4.8 +3
      Modded/Hacked App: Dummynation By ALEJANDRO HERNANDEZ FERRERO
      Bundle ID: ahf.dummynation
      iTunes Store Link: https://apps.apple.com/us/app/dummynation/id6444295551?uo=4

       

      📌 Mod Requirements

      - Jailbroken iPhone or iPad.
      - iGameGod / Filza / iMazing.
      - Cydia Substrate, ElleKit, Substitute or libhooker depending on your jailbreak (from Cydia, Sileo or Zebra).

       

      🤩 Hack Features

      - Premium + No Ads
      - Infinite Research Point
      - Infinite Liquidity (Gold)


      🍏 For Non-Jailbroken & No Jailbreak required hacks: https://iosgods.com/topic/191828-dummynation-v313-jailed-cheats-3/

       

      ⬇️ iOS Hack Download Link: https://iosgods.com/topic/191829-dummynation-cheats-v313-3/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 25 replies
    • The Tower - Idle Tower Defense v27.2.0 Jailed Cheats +2
      Modded/Hacked App: The Tower - Idle Tower Defense By Tech Tree Games LLC
      Bundle ID: com.TechTreeGames.TheTower
      App Store Link: https://apps.apple.com/us/app/the-tower-idle-tower-defense/id1575590830?uo=4

       

      📌 Mod Requirements

      - Non-Jailbroken/Jailed or Jailbroken iPhone or iPad.
      - Sideloadly or alternatives.
      - Computer running Windows/macOS/Linux with iTunes installed.

       

      🤩 Hack Features

      - Free iAP ( Turn on inside iOSGods Mod Menu first )
      - iGameGod Cheat Engine Enabled ( modify in-game currency and speed up stage )

       

      ⬇️ iOS Hack Download IPA Link: https://iosgods.com/topic/154025-the-tower-idle-tower-defense-v2706-jailed-cheats-2/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 179 replies
    • Summoners War: Rush v2.0.34627 Jailed Cheats +4
      Modded/Hacked App: Summoners War: Rush By Com2uS Corp.
      Bundle ID: com.com2us.legion.ios.apple.global.normal
      App Store Link: https://apps.apple.com/us/app/summoners-war-rush/id6476949737?uo=4

       

      📌 Mod Requirements

      - Non-Jailbroken/Jailed or Jailbroken iPhone or iPad.
      - Sideloadly or alternatives.
      - Computer running Windows/macOS/Linux with iTunes installed.

       

      🤩 Hack Features

      - God Mode
      - Weak Enemies
      - Multiply ATK Speed
      - Multiply MOVE Speed

       

      DO NOT BUY VIP FOR THIS CHEAT AND DON'T EXPECT THIS CAN BE UPDATED

       

      ⬇️ iOS Hack Download IPA Link: https://iosgods.com/topic/196105-summoners-war-rush-v1425709-jailed-cheats-4/
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 119 replies
    • 1945 - Airplane shooting games v15.04 Jailed Cheats +3
      Modded/Hacked App: 1945 Air Force: Airplane Games By ONESOFT GLOBAL PTE. LTD.
      Bundle ID: com.os.airforce
      App Store Link: https://apps.apple.com/us/app/1945-air-force-airplane-games/id1460632826?uo=4

       


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


      Hack Features:
      - God Mode
      - One Hit Kill
      - Premium + No Ads


      iOS Hack Download Link: https://iosgods.com/topic/150679-1945-airplane-shooting-games-v1502-jailed-cheats-3/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 156 replies
    • SimCity BuildIt Cheats v1.71.1 +1 [ Freeze Currencies ]
      Modded/Hacked App: SimCity BuildIt By EA Swiss Sarl
      Bundle ID: com.ea.simcitymobile.bv
      iTunes Store Link: https://apps.apple.com/us/app/simcity-buildit/id913292932?uo=4


      Hack Features:
      - Infinite Currencies


      Non-Jailbroken & No Jailbreak required hack(s): https://iosgods.com/topic/124792-arm64-simcity-buildit-v1412-jailed-cheats-1/


      iOS Hack Download Link: https://iosgods.com/topic/157687-simcity-buildit-cheats-v1415-1/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 708 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