Jump to content

[TUTORIAL] How To Hack Using Mobile Substrate (Method Hooking)


180 posts in this topic

Recommended Posts

Updated

✻ Requirements
✔ Mobile Substrate
✔ Mobile Terminal
✔ BigBoss Recommended Tools
✔ Theos
✔ iOS SDK

✻ Setup Variants
From my experience, setting up theos is a *****. My 3 iDevices all have different theos/SDK variants because while something may work on one device, it may not work on another. In the future I may write a theos/SDK error list with solutions, but right now I really don’t have the expertise to talk about that, especially considering I have a broken theos now that I can’t seem to fix. :p If you are having similar issues, I recommend following this guide: https://iosgods.com/topic/62343-new-2021-ios-1213-how-to-install-theos-sdk-on-your-idevice/

 

✻ Setting Up a Project
Launch Mobile Terminal and sign in as root. Then type this command:

$THEOS/bin.nic.pl
/* If that results in error, type /var/theos/bin/nic.pl */

This command starts up the New Instance Creator (nic). Next, choose iphone/tweak by typing the number associated with it. Lastly, name your project (herein myhack), bundle ID, and author. The last too are only important if you plan on publishing your tweak to Cydia. If you’re not, feel free to leave them blank.

Note this puts myhack in /var/mobile. If you want it in a different directory, cd it before starting up nic.

In /myhack, there are 3 files of interest. The Makefile, myhack.plist, and Tweak.xm. The Makefile is where you would add frameworks or instructions for the installation process. myhack.plist contains a list of app bundle IDs the hack will target. To fetch a bundle ID, go into /Library/Preferences of your app and copy the com.companyName.appName.plist (exclude the .plist extension). That is the bundle ID. If you’re app doesn’t have that file in /Preferences, go to /appName.app and open up Info.plist. The bundle ID will be in <string>Bundle Identifier</string>. If you want the hack to work on all apps, delete the myhack.plist.

 

✻ Tweak.xm
This is where the code is written. The file already has an example written for you. Since it is commented out, feel free to keep it there for reference - it will not affect your code.

The way MS hook hacks are made is by calling both a header and a method, and altering them. I recommend using Flex to find headers and methods. It’s by far the most convenient program to use, considering you can search all headers at once and you don’t need to crack the app. If you prefer a command-line program, use class dump. If you notice a lack of unique headers/methods, the app is sub_X. MS hooking will not work with this app and you’ll either need to use symbol hooking or code injection.

Here are some examples on how to return each method type:

int, double, and long long

-(int)coins {
return 999999;
}
/* doubles and long longs are returned the same way, just replace (int) with (double) or (long long).
The return value must be an integer - no decimals */

float

-(float)coins {
return 999.9f;
}

bool

-(bool)hasCoins {
return TRUE;
}
/* must be true/false value. Can also be written as yes/no */

id

-(id)coins {
return [NSNumber numberWithInteger:999999];
}
/* id’s can be anything - a number, bool, string, etc. You have to call the correct NSClass to hack it correctly.
These are very rare - I myself have never had to hack one */

void

-(void)showCoins {
}
/* This is a nulled method. Standalone-voids cannot be returned */

void with argument

-(void)setCoins:(int)argument {
argument = 999999;
}
-(void)setHasCoins:(bool)argument {
argument = TRUE;
}
-(void)setCoins:(id)argument {
argument = [NSNumber numberWithInteger:999999];
}
/* “argument” can be named anything. This is similar to returning non-void counterparts,
except you name the argument and remove “return” */

 

✻ Adding UI Popup
This is really handy against leechers. Adding a popup is relatively simple, and requires changes to both the Makefile and Tweak.xm. First, use Flex (or class dump) to find method -(void)applicationDidBecomeActive:(id). It's usually in a header file called AppDelegate. Now add this to your Tweak.xm (remember to edit the header accordingly):

 

%hook AppDelegate
-(void)applicationDidBecomeActive:(id)argument {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"This is the Title" message:@"This is the Message" delegate:nil cancelButtonTitle:@"This is the Button Text" otherButtonTitles:nil];
[alert show];
[alert release];
}
%end
/* Sometimes attaching the popup to this method results in a crash.
You can attach the popup to any void you want,
but attaching it to the launch method is the most convenient for both you and the user */

If you were to compile myhack now, the compiler would not understand what UIAlertView is and would return an error. To fix this, import the UIKit framework in your Makefile. Add this line below the myhack_FILES line:

myhack_FRAMEWORKS = UIKit

You can now compile. :)

 

✻ Compiling
In MobileTerminal, cd to your project folder. Then, type any of these commands:

make
/* Makes the .dylib */
make package
/* Makes a .deb for easy install */
make package install
/* Makes a .deb and installs it for you */

The .dylib will appear in /myhack/obj. The .deb will appear in /myhack and install to /Library/MobileSubstrate/DynamicLibraries.
 
Extra info by @castix (post😞

So because this tutorials is already awesome (big shoutout to evilg00d there) I will just add some notes
 
As he already mentioned in the main topic here, you can't override void but you can NULL them = disable them

- (void)enemiesShoots {    //This is the method that calls your opponents to shoot so if we disable this, they can't anymore
}

if you want to add this in a patcher, you can simply write it like this

- (void)enemyShoots {                              //Easy isn't it ?
   if(GetPrefBool(@"kEnemyShooting")) {
   return; 
   }
   return %orig;
   }

Moving on there are some more value classes, which can be modified

- (long long)Coins {    //This can obviously be treated like int
return 2222;
}
- (double)Coins {     //You can also see here that it can be overwritten really easy
return 2222;
}

Those are just a few more function methods , so if you find something like them in FLEX/Headers/Binaries you know what do do.

 

Step-by-step tutorial on how to make a Preference Bundle (Patcher with on/off settings) here: http://iosgods.com/topic/444-tutorial-how-to-make-a-preference-bundle/

  • Like 13
  • Thanks 2
  • Informative 3
Posted

Very helpful!

 

Thanks for posting! :)

 

Pinned.

  • Like 1
Posted

No problem, DiDA. :) Happy to help.

Thanks EG! :)

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

    • Kingdom Rush Battles: TD Game v1.1.1 +4 Jailed Cheats [ No Tower Cost ]
      Modded/Hacked App: Kingdom Rush Battles: TD Game By Ironhide S.A.
      Bundle ID: com.ironhidegames.kingdomrush.mp
      App Store Link: https://apps.apple.com/ph/app/kingdom-rush-battles-td-game/id6746510979?uo=4

       
       

      🤩 Hack Features

      - Dumb Enemy -> Disables your enemy from buying towers.
      - No Tower Build Cost -> Use with Dumb Enemy.
      - No Tower Upgrade Cost -> Use with Dumb Enemy.
      - No Tower Skill Upgrade Cost -> Use with Dumb Enemy.
        • Informative
        • Winner
        • Like
      • 21 replies
    • Kingdom Rush Battles: TD Game v1.1.1 +4 Cheats [ No Tower Cost ]
      Modded/Hacked App: Kingdom Rush Battles: TD Game By Ironhide S.A.
      Bundle ID: com.ironhidegames.kingdomrush.mp
      App Store Link: https://apps.apple.com/ph/app/kingdom-rush-battles-td-game/id6746510979?uo=4

       


      🤩 Hack Features

      - Dumb Enemy -> Disables your enemy from buying towers.
      - No Tower Build Cost -> Use with Dumb Enemy.
      - No Tower Upgrade Cost -> Use with Dumb Enemy.
      - No Tower Skill Upgrade Cost -> Use with Dumb Enemy.
        • Agree
        • Haha
        • Winner
        • Like
      • 16 replies
    • The Walking Zombie 2 v3.45.0 +12 Jailed Cheats [ God Mode, Damage, Speed ]
      Modded/Hacked App: The Walking Zombie 2 By Alda Games s.r.o.
      Bundle ID: com.aldagames.zombieshooter
      iTunes Store Link: https://apps.apple.com/us/app/the-walking-zombie-2/id1477794561
       

      Hack Features:
      - Unlimited Silver
      - Unlimited Gold
      - God Mode
      - Custom Damage
      - Custom Move Speed
      - Custom Doctor
      - Unlimited Ammo -> Will not decrease.
      - Instant Reload
      - Insane Fire Rate
      - No Weapon Recoil
      - No Weapon Spread
      - No Camera Shake


      Jailbreak required hack(s): [Mod Menu Hack] The Walking Zombie 2 v3.6.12 +12 Cheats [ God Mode, Damage, Speed ] - Free Jailbroken Cydia Cheats - iOSGods
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 94 replies
    • The Walking Zombie 2 v3.45.0 +12 Cheats [ God Mode, Damage, Speed ]
      Modded/Hacked App: The Walking Zombie 2 By Alda Games s.r.o.
      Bundle ID: com.aldagames.zombieshooter
      iTunes Store Link: https://apps.apple.com/us/app/the-walking-zombie-2/id1477794561


      Hack Features:
      - Unlimited Silver
      - Unlimited Gold
      - God Mode
      - Custom Damage
      - Custom Move Speed
      - Custom Doctor
      - Unlimited Ammo -> Will not decrease.
      - Instant Reload
      - Insane Fire Rate
      - No Weapon Recoil
      - No Weapon Spread
      - No Camera Shake


      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/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 84 replies
    • Whispers - Interactive Stories v2.3.11 +2 Jailed Cheats [ Free Choices ]
      Modded/Hacked App: Whispers: Interactive Stories By GAMEHAUS LIMITED
      Bundle ID: com.twincat.stories
      iTunes Store Link: https://apps.apple.com/us/app/whispers-interactive-stories/id1546336250
       

      Hack Features:
      - All Chapters Unlocked
      - Free Premium Choices


      Jailbreak required hack(s): [Mod Menu Hack] Whispers: Interactive Stories v1.4.9 +2 Cheats [ Free Choices ] - Free Jailbroken Cydia Cheats - iOSGods
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 309 replies
    • Senses - Choose Romance Story v1.18.2 +2 Jailed Cheats [ Unlimited Currencies ]
      Modded/Hacked App: Senses - Choose Romance Story By Allustone, Inc.
      Bundle ID: games.extras.novels
      App Store Link: https://apps.apple.com/us/app/senses-choose-romance-story/id1665172637?uo=4

       


      🤩 Hack Features

      - Unlimited Gems -> Head into Settings > Support and toggle the Copy UDID button.*
      - Unlimited Keys -> Head into Settings > Support and toggle the Copy UDID button.*

      * - Only use 1 feature at a time.
        • Haha
        • Thanks
        • Winner
        • Like
      • 56 replies
    • Senses - Choose Romance Story v1.18.2 +2 Cheats [ Unlimited Currencies ]
      Modded/Hacked App: Senses - Choose Romance Story By Allustone, Inc.
      Bundle ID: games.extras.novels
      App Store Link: https://apps.apple.com/us/app/senses-choose-romance-story/id1665172637?uo=4

       
       

      🤩 Hack Features

      - Unlimited Gems -> Head into Settings > Support and toggle the Copy UDID button.*
      - Unlimited Keys -> Head into Settings > Support and toggle the Copy UDID button.*

      * - Only use 1 feature at a time.
        • Agree
        • Haha
        • Thanks
        • Like
      • 8 replies
    • MeChat - Interactive Stories v4.41.0 +5 Jailed Cheats [ Unlimited Gems ]
      Modded/Hacked App: MeChat - Interactive Stories By IMPONILOX LIMITED
      Bundle ID: world.playme.mechat
      App Store Link: https://apps.apple.com/us/app/mechat-interactive-stories/id1536157979?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

      - Unlimited Gems -> Will increase instead of decrease.
      - Unlock All Photos
      - Unlock All Audio Clips
      -- VIP Enabled

      VIP
      - Unlimited Gems -> Earn some then disable this feature. DO NOT SPEND ANY GEMS WHILST THIS FEATURE IS ENABLED!
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 843 replies
    • MeChat - Interactive Stories v4.41.0 +5 Cheats [ Unlimited Gems ]
      Modded/Hacked App: MeChat - Interactive Stories By IMPONILOX LIMITED
      Bundle ID: world.playme.mechat
      App Store Link: https://apps.apple.com/us/app/mechat-interactive-stories/id1536157979?uo=4

       

      📌 Mod Requirements

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

       

      🤩 Hack Features

      - Unlimited Gems -> Will increase instead of decrease.
      - Unlock All Photos
      - Unlock All Audio Clips
      -- VIP Enabled

      VIP
      - Unlimited Gems -> Earn some then disable this feature. DO NOT SPEND ANY GEMS WHILST THIS FEATURE IS ENABLED!
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 335 replies
    • Whispers - Interactive Stories v2.3.11 +2 Cheats [ Free Choices ]
      Modded/Hacked App: Whispers: Interactive Stories By GAMEHAUS LIMITED
      Bundle ID: com.twincat.stories
      iTunes Store Link: https://apps.apple.com/us/app/whispers-interactive-stories/id1546336250
       

      Hack Features:
      - All Chapters Unlocked
      - Free Premium Choices


      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/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 185 replies
    • The Kingdom: Medieval Tales v1.0.10 +3 Jailed Cheats [ Damage & Defence ]
      Modded/Hacked App: The Kingdom: Medieval Tales By BoomBit, Inc.
      Bundle ID: com.stratospheregames.The.Kingdom.Medieval.Tales.Strategy.Building.Games
      App Store Link: https://apps.apple.com/us/app/the-kingdom-medieval-tales/id6744967226?uo=4

       
       

      🤩 Hack Features

      - Damage Multiplier
      - Defence Multiplier
      - God Mode
        • Thanks
        • Winner
        • Like
      • 21 replies
    • Planet Crusher - Dig & Drill v0.19.1 +8 Jailed Cheats [ Unlimited Currencies ]
      Modded/Hacked App: Planet Crusher - Dig & Drill By Gryphon Games UG (haftungsbeschrankt)
      Bundle ID: com.gryphongames.planetcrusher
      App Store Link: https://apps.apple.com/us/app/planet-crusher-dig-drill/id6738657101?uo=4

       
       

      🤩 Hack Features

      - God Mode
      - Damage Multiplier
      - Drill Damage Multiplier
      - No Knockback
      - Unlimited Currencies -> Will increase instead of decrease.
      - All Planets Unlocked
      - Battle Pass Unlocked
      -- No Ads
        • Agree
        • Thanks
        • Winner
        • Like
      • 39 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