
Mobile Helper Framework (mhf) è uno strumento che automatizza il processo di identificazione del framework/tecnologia utilizzata per creare un'applicazione mobile. Inoltre, aiuta a trovare informazioni sensibili o fornisce suggerimenti per lavorare con la piattaforma identificata.
è uno strumento che automatizza il processo di identificazione del framework/tecnologia utilizzato per creare un'applicazione mobile. Inoltre, aiuta a trovare informazioni sensibili o fornisce suggerimenti per lavorare con la piattaforma identificata.
Lo strumento cerca file associati alle tecnologie utilizzate nello sviluppo di applicazioni mobili, come file di configurazione, file di risorse e file di codice sorgente.
Search files:
index.html
cordova.js
cordova_plugins.js
Search file
Andorid files:
libreactnativejni.so
index.android.bundle
iOS files:
main.jsbundle
❗È richiesto almeno Java 8 per eseguire Apktool.
pip install -r requirements.txt
python3 mhf.py app.apk|ipa|aab
python3 mobile_helper_framework.py file.apk
[+] App was written in React Native
Do you want analizy the application (y/n) y
Output directory already exists. Skipping decompilation.
Beauty the react code? (y/n) n
Search any info? (y/n) y
==>>Searching possible internal IPs in the file
results.........
==>>Searching possible emails in the file
results.........
==>>Searching possible interesting words in the file
results.........
==>>Searching Private Keys in the file
results.........
==>>Searching high confidential secrets
results.........
==>>Searching possible sensitive URLs in js files
results.........
==>>Searching possible endpoints in js files results.........
Questo strumento utilizza Apktool per la decompilazione delle applicazioni Android.
Questo strumento rinomina i file .ipa delle applicazioni iOS in .zip ed estrae i contenuti.
Cosa si intende per patching apk: Questo strumento utilizza Reflutter, un framework che assiste nel reverse engineering delle app Flutter utilizzando una versione patchata della libreria Flutter.
More information: https://github.com/Impact-I/reFlutter
Split APK è una tecnica utilizzata da Android per ridurre le dimensioni di un'applicazione e consentire agli utenti di scaricare e utilizzare solo le parti necessarie dell'applicazione.
Invece di scaricare un'applicazione completa in un singolo file APK, gli Split APK dividono l'applicazione in diversi file APK più piccoli, ciascuno dei quali contiene solo una parte dell'applicazione come risorse, librerie di codice, asset e file di configurazione.
adb shell pm path com.package
package:/data/app/com.package-NW8ZbgI5VPzvSZ1NgMa4CQ==/base.apk
package:/data/app/com.package-NW8ZbgI5VPzvSZ1NgMa4CQ==/split_config.arm64_v8a.apk
package:/data/app/com.package-NW8ZbgI5VPzvSZ1NgMa4CQ==/split_config.en.apk
package:/data/app/com.package-NW8ZbgI5VPzvSZ1NgMa4CQ==/split_config.xxhdpi.apk
Ad esempio, in Flutter, se l'applicazione è un Split, è necessario patchare split_config.arm64_v8a.apk; questo file contiene libflutter.so
| Funzionalità | Nota | Cordova | React Native | Native JavaScript | Flutter | Xamarin |
|---|
| JavaScript beautifier | Usalo per le prime volte per vedere risultati migliori. | ✅ | ✅ | ✅ | ||
| Identificazione di informazioni sensibili multiple | IPs, Private Keys, API Keys, Emails, URLs | ✅ | ✅ | ✅ | ❌ | |
| Funzioni crittografiche | ✅ | ✅ | ✅ | ❌ | ❌ | |
| Estrattore di endpoint | ✅ | ✅ | ✅ | ❌ | ❌ | |
| Rileva automaticamente se il codice è stato abbellito. | ❌ | ❌ | ❌ | |||
| Estrae automaticamente l'apk da dispositivi/emulatori | ❌ | ❌ | ❌ | ❌ | ❌ | |
| Patching apk | ✅ | |||||
| Estrae un APK da un file bundle. | ✅ | ✅ | ✅ | ✅ | ✅ | |
| Rileva se i file JS sono crittografati | ❌ | ❌ | ||||
| Rileva se le risorse sono compresse. | ❌ | Hermes✅ | ❌ | ❌ | XALZ✅ | |
| Rileva se l'app è suddivisa | ❌ | ❌ | ❌ | ❌ | ❌ |