
Mobile Helper Framework (mhf)는 모바일 애플리케이션을 만드는 데 사용된 프레임워크/기술을 식별하는 과정을 자동화하는 도구입니다. 또한, 민감한 정보를 찾는 데 도움을 주거나 식별된 플랫폼에서 작업하기 위한 제안을 제공합니다.
는 모바일 애플리케이션을 만드는 데 사용된 프레임워크/기술을 자동으로 식별하는 도구입니다. 또한, 민감한 정보를 찾거나 식별된 플랫폼을 작업하기 위한 제안을 제공하는 데 도움을 줍니다.
이 도구는 모바일 애플리케이션 개발에 사용된 기술과 관련된 파일(예: 구성 파일, 리소스 파일, 소스 코드 파일)을 검색합니다.
검색 파일:
index.html
cordova.js
cordova_plugins.js
파일 검색
Andorid files:
libreactnativejni.so
index.android.bundle
iOS files:
main.jsbundle
❗Apktool을 실행하려면 Java 8 이상이 필요합니다.
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.........
이 도구는 Android 애플리케이션 디컴파일에 Apktool을 사용합니다.
이 도구는 iOS 애플리케이션의 .ipa 파일을 .zip으로 이름을 바꾸고 내용을 추출합니다.
APK 패칭이란? 이 도구는 Flutter 라이브러리의 패치된 버전을 사용하여 Flutter 앱의 리버스 엔지니어링을 지원하는 프레임워크인 Reflutter를 사용합니다.
더 많은 정보: https://github.com/Impact-I/reFlutter
Split APKs는 Android에서 애플리케이션 크기를 줄이고 사용자가 애플리케이션의 필수 부분만 다운로드하여 사용할 수 있게 하는 기술입니다.
단일 APK 파일로 전체 애플리케이션을 다운로드하는 대신, Split APK는 애플리케이션을 여러 개의 작은 APK 파일로 나누며, 각 파일은 리소스, 코드 라이브러리, 에셋, 구성 파일 등 애플리케이션의 일부만 포함합니다.
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
예를 들어, Flutter에서 애플리케이션이 Split인 경우 split_config.arm64_v8a.apk를 패치해야 하며, 이 파일에는 libflutter.so가 포함되어 있습니다.
| 기능 | 비고 | Cordova | React Native | Native JavaScript | Flutter | Xamarin |
|---|
| JavaScript beautifier | 처음 몇 번은 더 나은 결과를 보기 위해 이것을 사용하세요. | ✅ | ✅ | ✅ | ||
| 다양한 민감 정보 식별 | IPs, Private Keys, API Keys, Emails, URLs | ✅ | ✅ | ✅ | ❌ | |
| 암호화 함수 | ✅ | ✅ | ✅ | ❌ | ❌ | |
| 엔드포인트 추출기 | ✅ | ✅ | ✅ | ❌ | ❌ | |
| 코드가 뷰티파이되었는지 자동 감지 | ❌ | ❌ | ❌ | |||
| 디바이스/에뮬레이터의 APK 자동 추출 | ❌ | ❌ | ❌ | ❌ | ❌ | |
| APK 패칭 | ✅ | |||||
| 번들 파일에서 APK 추출 | ✅ | ✅ | ✅ | ✅ | ✅ | |
| JS 파일이 암호화되었는지 감지 | ❌ | ❌ | ||||
| 리소스가 압축되었는지 감지 | ❌ | Hermes✅ | ❌ | ❌ | XALZ✅ | |
| 앱이 분할되었는지 감지 | ❌ | ❌ | ❌ | ❌ | ❌ |