Frida is an amazing piece of software. My favourite use is mitm proxy “attack” to have an in-depth API investigation of apps that I use frequently. This setup will allow you to easily bypass any SSL certificate pinning.
Execute these steps in 3 different shells
$ docker volume create mitmproxy
$ docker run --rm -it -v mitmproxy:/home/mitmproxy/.mitmproxy -p 4817:8080 -p 4818:8081 mitmproxy/mitmproxy mitmweb --web-host 0.0.0.0 --ignore-hosts gateway.icloud.com
$ python3 -m venv frida-venv
$ source frida-venv/bin/activate
(frida-venv) $ python3 -m pip install Frida (frida-venv) $ python3 -m pip install objection (frida-venv) $ python3 -m pip install frida-tools
(frida-venv) $ version=$(frida --version) && curl -Lo ~/Downloads/frida-server.xz https://github.com/frida/frida/releases/download/$version/frida-server-$version-android-x86_64.xz
(frida-venv) $ xz -d ~/Downloads/frida-server.xz
$ snap install --classic android-studio
$ export ANDROID_HOME=$HOME/Android/Sdk $ export PATH=$PATH:$ANDROID_HOME/emulator $ export PATH=$PATH:$ANDROID_HOME/tools $ export PATH=$PATH:$ANDROID_HOME/tools/bin $ export PATH=$PATH:$ANDROID_HOME/platform-tools $ export PATH=~/Android/Sdk/cmdline-tools/latest/bin:$PATH
$ avdmanager create avd --force --name pixel-android-api-29 --package "system-images;android-29;google_apis;x86_64" --device "pixel"
$ emulator -avd pixel-android-api-29 -writable-system &> /dev/null &
$ adb root
$ adb push ~/Downloads/YOUR_MITM_CERT.cer /data/local/tmp/cert-der.crt
$ adb push ~/Downloads/frida-server /data/local/tmp
$ adb shell "chmod +x /data/local/tmp/frida-server"
$ adb shell "/data/local/tmp/frida-server&" &
$ adb install YOUR_APK.apk &
Great, you are ready to go!
(frida-venv) $ frida --codeshare akabe1/frida-multiple-unpinning -U -f com.google.com