IPA Binary Search by ProHex

Wait 5 sec.

Sometimes you want to find strings in your IPAs, but not open every single file to do so. Using other search methods have been super unreliable for me, so I made a python script that allows you to exactly do that, search whatever string you are looking for, recursively, in the whole IPA files files and subfolder. The script is a lot more extensive than I want to describe, so feel free to just try it. Sample output: python ipa-string-search.py -s "iosgods.com" "C:\Users\Admin\Downloads\DRAGON BALL LEGENDS - Free Hack No Jailbreak Cheats 6.5.0 Hacked IPA by iOSGods.com\Payload\DBLEGENDS.app"[*] Searching for: iosgods.com[*] Scanning directory: C:\Users\Admin\Downloads\DRAGON BALL LEGENDS - Free Hack No Jailbreak Cheats 6.5.0 Hacked IPA by iOSGods.com\Payload\DBLEGENDS.app[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x00633764 | String: https://iosgods.com/oauth/authorize/[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x0063376c | String: mp.UITouchesEvent.v@:.IGLoginNotification.https://iosgods.com/oauth/aut[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x006339c3 | String: https://iosgods.com/api/[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x006339cb | String: "24.primaryGroup.photoUrl.core/members/%@.https://iosgods.com/api/.Bear[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x006339f4 | String: https://iosgods.com/oauth/token/[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x006339fc | String: /iosgods.com/api/.Bearer %@.Authorization.https://iosgods.com/oauth/tok[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:c_string String: iosgods.com Context: Offset: 0x00633a45 | String: This cheat requires an active ViP subscription. If you'd like to use th[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x00633afb | String: https://iosgods.com/store/category/1-vip-subscriptions/[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x00633b03 | String: .com..The app will now quit..Purchase ViP.https://iosgods.com/store/cat[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x00633b3d | String: https://iosgods.com/topic/92593-perks-of-being-a-vip-member-on-iosgodsc[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x00633b45 | String: e/category/1-vip-subscriptions/.ViP Perks.https://iosgods.com/topic/925[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:c_string String: iosgods.com Context: Offset: 0x00633b9f | String: This cheat requires you to login to your iOSGods.com account. Please cl[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x00633c92 | String: https://iosgods.com/topic/67148-iosgods-authenticator-iosgods-menu-faq-[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x00633c9a | String: pic from the link below..iOSGods Auth FAQ.https://iosgods.com/topic/671[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x00633d4c | String: https://iosgods.com/[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x00633d54 | String: heck iOSGods for a status update..iOSGods.https://iosgods.com/.Retry.IG[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x00633d75 | String: https://fallback.iosgods.com/menu/fallback.json[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x00633d86 | String: iosgods.com/.Retry.IGPromptLogin.https://fallback.iosgods.com/menu/fall[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:c_string String: iosgods.com Context: Offset: 0x00633ded | String: iOSGods.com[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:c_string String: iosgods.com Context: Offset: 0x00633f97 | String: Login to iOSGods.com[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x006341a6 | String: https://www.iosgods.com/menu/iggannouncements.json[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x006341b2 | String: ents].Error reading announcements: %@.https://www.iosgods.com/menu/igga[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x00634740 | String: https://iosgods.com/topic/134184-introducing-igamegod-cheat-engine-spee[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x00634748 | String: ionLabel..Failed to open link.v12@?0B8....https://iosgods.com/topic/134[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x006347c0 | String: cydia://url/https://cydia.saurik.com/api/share#?source=https://iosgods.[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:direct String: iosgods.com Context: Offset: 0x006347ff | String: ttps://cydia.saurik.com/api/share#?source=https://iosgods.com/repo/&pac[+] Found in Frameworks\iGameGod.framework\iGameGod Type: binary:objc_selector String: iosgods.com Context: Offset: 0x0063a340 | String: https://iosgods.com/menu/iggversion.json Usage: usage: ipa-string-search.py [-h] [-s SEARCH] [-c] [-e] [-o OUTPUT] [-f {json,txt,csv}] [--min-length MIN_LENGTH] [--max-length MAX_LENGTH] [-i] ipa_pathIPA String Scanner - Search and extract strings from iOS appspositional arguments: ipa_path Path to extracted IPA directoryoptions: -h, --help show this help message and exit -s, --search SEARCH Search for specific string -c, --case-sensitive Perform case-sensitive search (default: case-insensitive) -e, --export-all Export all found strings -o, --output OUTPUT Output file path (default: strings_output.json) -f, --format {json,txt,csv} Output format (default: json) --min-length MIN_LENGTH Minimum string length (default: 4) --max-length MAX_LENGTH Maximum string length (default: 1000) -i, --interesting Find interesting strings (API keys, URLs, etc.)Examples: # Search for specific string (case-insensitive by default) python ipa_scanner.py /path/to/extracted/ipa -s "api_key" # Case-sensitive search python ipa_scanner.py /path/to/extracted/ipa -s "ViP" -c # Export all strings to JSON python ipa_scanner.py /path/to/extracted/ipa -e -o strings.json # Export all strings to CSV with custom length python ipa_scanner.py /path/to/extracted/ipa -e -o strings.csv -f csv --min-length 10 # Find interesting strings (API keys, URLs, etc.) python ipa_scanner.py /path/to/extracted/ipa -i # Search in Unity games python ipa_scanner.py /path/to/extracted/unity_app -s "PlayerPrefs" Code: [Hidden Content] Supports also UnityFrameworks, UnityAssets, SQLite Databases, Mach-O Binary files and many more...