Mobile
Static Analysis
jdgui http://java-decompiler.github.io/
apktool https://ibotpeaches.github.io/Apktool/
dex2jar https://github.com/pxb1988/dex2jar
jadx https://github.com/skylot/jadx
Dynamic Analysis
Set a proxy Install the certificate and you are ready to go
System level certificate installation
Export your Burp Certificate Proxy > Options > CA Certificate > Export in DER format
Convert it to PEM
openssl x509 -inform der -in cacert.der -out burp.pem
Rename it with its checksum
mv burp.pem $(openssl x509 -inform PEM -subject_hash_old -in burp.pem | head -1)".0"
Mount a writeable system
adb shell "mount -o rw,remount /system"
Upload the certificate
adb push <generated.0> /system/etc/security/cacerts/
adb push 9a5ba575.0 /system/etc/security/cacerts/
Reboot the vm
adb reboot
Setting up proxy using ADB
Setting up a proxy
adb shell settings put global http_proxy <proxy ip>:<proxy port>
Flushing the proxy setting
adb shell settings delete global http_proxy
Currently focused activity
Focusing / Starting another activity
am start -n com.mailchimp.mailchimp/com.mailchimp.android.mcm.ui.upload.FileUploadActivity
List activities of an APK
Mobile Vulnerabilities & What to check
OWASP Top 10
M1 Improper Platform Usage
Misconfigurations in AndroidManifest.xml
M2 Insecure Data Storage
If an app storages a data on the external storage insecurely. SQL Databases, XML files, Log files, Cookie storages, Binary Data etc.
M3 Insecure Communication
Clear text communication, communication without SSL
M4 Insecure Authentication
Insecure 2FA implementations, 2FA bypass.
If you can access to an API without authorization.
OTP bypass, Client side bypasses. For example you can manipulate the response of the server and bypass the 2FA or OTP.
M5 Insufficient Cryptography
Incorrent encryption, using encoding.
M6 Insecure Authorization
IDORs
M7 Client Code Quality
Client side sql injection, buffer overflows, XSS.
M8 Code Tampering
For example, cracking a free aplication to a premium one.
M9 Reverse Engineering
Sensitive informations, strings etc.
M10 Extraneous Functionality
For example, developer forgots an external functionality on the app.
Leftover backdoor, debug parameter etc.
Last updated