我自己原来用的python3 (好像brida的时候点击start server没反应 所以要用2.7)利用anaconda安装python2.7的虚拟环境
conda create -n py27 python=2.7
source activate py27 激活虚拟环境(source deactivate 关闭虚拟环境)
安装Frida: pip install frida & pip install frida-tools
安装Pyro4: pip install Pyro4
下载frida-server
adb push frida-server /data/local/tmp
然后进入目录启动它
- adb shell
- su
- cd /data/local/tmp
- chmod 777 frida-server
- ./frida-server
另开一个终端转发端口
adb forward tcp:27042 tcp:27042
adb forward tcp:27043 tcp:27043
查看frida是否成功交互 frida-ps -U
(之后启动都要显示包内容-contents-java-app-burp-loader-keygen.jar点击-run,直接双击应用图标没反应)
破解完以后点击extender选项卡-bapp store里找brida下载以后界面上就会多了个brida选项卡
配置configurations
1.application ID:需要hook的apk的包名
2.python binary path:虚拟环境python的运行目录:/Users/zair003/anaconda3/envs/py27/bin/python
点击旁边start server/spawn application
点击analyze binary选项卡 然后点击右边load tree ,java目录下包含着所有的类名
找到你觉得可能加密的完整包名-类名(不包含方法名,举例:com.bangcle.comapiprotect.encrypt.SYAESEncrypt)
右键-inspect
其实我想看这个类下面的aesDecryptString方法 主要在登录加密的时候用到
然后在你手机上运行app到登录界面登录一下,就能在console看到这个类的所有方法的参数和返回值(只能看string类型,其他类型查看需要改写上面那个configurations里面的FRIDA JS FILE的js)