
Uno strumento che ti aiuta a tracciare facilmente classi, funzioni e a modificare i valori di ritorno dei metodi sulla piattaforma iOS.
📍 Uno strumento che ti aiuta a usare facilmente Frida. Supporta script per tracciare classi, funzioni e modificare i valori di ritorno dei metodi sulla piattaforma iOS.
👉 Per la piattaforma Android: frida-android-hook
👉 Per intercettare API crittografate su applicazioni iOS: frida-ios-intercept-api
| SO | Supportato | Note |
|---|---|---|
| MacOS | ✅ | Stabile |
| Linux | ✅ | Stabile |
| Windows | ✅ | Instabile |
| iOS | Frida | Frida-tools | Supportato | Versione Stabile |
|---|---|---|---|---|
| 16.7.11 | 16.7.14 | 13.7.1 | ✅ | |
| 16.7.11 | 16.1.4 | 12.2.1 | ✅ | ✅ |
Nota: Utilizza le versioni stabili per risolvere il problema ObjC not defined presente in frida 17.0.1.
Esecuzione con Python 3.x. Supporta sia lo script spawn che attach per il processo. Tutte le opzioni da ./ioshook -h:
| Categoria | Opzione | Descrizione |
|---|---|---|
| Generali | -h, --help | Mostra il messaggio di aiuto ed esci |
--cli | Avvia la CLI interattiva di iOSHook | |
-p, --package PACKAGE | Identificatore bundle dell'app target (spawn) | |
-n, --name NAME | Nome visualizzato dell'app target (attach) | |
--pid PID | ID processo dell'app target (attach) | |
-s, --script SCRIPT.JS | Percorso dello script JavaScript di hooking Frida | |
-c, `--check-version* | Controlla la presenza di aggiornamenti di iOSHook | |
-u, --update | Aggiorna iOSHook all'ultima versione | |
| Metodo rapido | -m, --method METHOD | app-static, bypass-jb, bypass-ssl, i-url-req, i-crypto (usa -n o -p secondo necessità) |
| Informazioni | --list-devices | Elenca tutti i dispositivi Frida connessi |
--list-apps | Elenca tutte le applicazioni installate sul dispositivo | |
--list-scripts | Elenca tutti gli script Frida disponibili | |
--logcat | Mostra il log di sistema del dispositivo (idevicesyslog) | |
--conf | Apri e modifica il file hook.conf | |
--shell, --ssh | Apri una shell SSH sul dispositivo (predefinito: USB tramite iproxy) | |
--ssh-port-forward LOCAL:DEVICE | Inoltra la porta dal locale al dispositivo (ssh -R) | |
--network HOST:PORT | Connetti tramite SSH di rete (porta predefinita 22) | |
--local | Connetti tramite USB usando iproxy | |
| Estrai decripta IPA | -d, --dump-app | Estrai e decripta il file IPA dell'applicazione |
-o, --output OUTPUT_IPA | Nome file di output per IPA decriptato (senza .ipa) | |
--dump-output-dir DIR | Directory di output per IPA estratto (predefinito: workspaces/dumps) | |
| Estrai memoria | --dump-memory OPTS | Estrai la memoria dell'applicazione in esecuzione (es. --string, --read-only) |
| Scansione Hexbyte IPA | --hexbyte-scan MODE | Modalità: help, scan, patch, json |
--file FILE.IPA | File IPA da scansionare/modificare | |
--pattern PATTERN | Pattern esadecimale da cercare (es. E103??AA????E0) | |
--address ADDRESS | Indirizzo per la patch (formato: indirizzo,byte,distanza) | |
--task TASK.json | File JSON per la scansione hexbyte | |
| reFlutter | --reflutter FLUTTER.IPA | Percorso al file IPA Flutter per l'analisi reFlutter |
[+] Versione più recente
https://github.com/noobpk/frida-ios-hook/releases
[+] Versione di sviluppo
git clone -b dev https://github.com/noobpk/frida-ios-hook
[+] Python >= v3.0 (Si consiglia di usare pyenv o virtualenv)
1. cd frida-ios-hook/
2. python3 -m venv py-env
3. source py-env/bin/active
1. pip3 install -r requirements.txt
3. python3 setup.py
4. cd frida-ios-hook
5. ./ioshook -h (--help)
Vedi l'utilizzo completo come Wiki
Se esegui lo script ma non funziona, puoi provare quanto segue:
frida -U -f package -l script.js
| Titolo | Link |
|---|---|
| Frida iOS Hook | Utilizzo base | Installazione - Elenco dispositivi - Elenco app - Elenco script - Logcat - Shell | https://youtu.be/xSndHgTdv4w |
| Frida iOS Hook | Utilizzo base | Estrazione decriptata IPA - Estrazione memoria app - Scansione Hexbyte IPA | https://youtu.be/AUsJ9_gnWAI |
| Frida iOS Hook | Utilizzo base | Statico app - Bypass jailbreak - Bypass SSL - Intercetta URL + Crypto | https://youtu.be/nWhKDSzArf8 |
| ed | Frida iOS Hook | Utilizzo avanzato | Estrazione memoria - Radare2 - Iaito |
Poiché non sono uno sviluppatore, le mie capacità di programmazione potrebbero non essere le migliori. Pertanto, se questo strumento presenta problemi o non funziona per te, crea un problema e cercherò di risolverlo. Ogni suggerimento per nuove funzionalità e discussioni è benvenuto!