1 定制安卓系统
github地址:github.com/LoseNine/An…
真机:Pixel1
证书安装步骤
- 导出Charles的证书到手机 /data/local/tmp目录,在手机内安装
adb root
adb disable-verity
adb reboot
adb remount
- mv -f /data/misc/user/0/cacerts-added/* /system/etc/security/cacerts
- 删除用户目录证书
如果发现如下报错
Android问题adbd cannot run as root in production builds解决
想删除vendor目录下的一个文件,但是提示read-only file system
使用命令:
mount -o remount -w /vendor
解决问题
2 Frida环境搭建
frida版本、Android系统版本与Python版本
frida12.3.6 Android5-6 Python3.7
frida12.8.0 Android7-8 Python3.8
frida14+ Android9+ Python3.8
frida15+ Android12 也可以用
定制安卓系统安装frida方法如下
pip install frida==14.2.18 -i https://pypi.doubanio.com/simple
pip install frida-tools==9.2.5 -i https://pypi.doubanio.com/simple
在手机端安装frida-server
https://github.com/frida/frida/releases/tag/14.2.18
下载frida-server-14.2.18-android-arm64.xz
3 webStorm安装
webStorm下载地址 www.jetbrains.com/webstorm/do…
破解方案:www.lookdiv.com/box/%E8%A7%…
frida微配置: npm i @types/frida-gum
4 关于端口转发
通过usb连接真机不需要转发端口,通过ip连接需要转发,连接模拟器也需要转发
adb forward tcp:27042 tcp:27042
5 FridaHook脚本说明
frida -U -F -l HookDemo.js
-U 代表远程USB设备
-F 代表附加到最前的这个app
-l 后面指明需要加载的JS脚本
frida -U -f 包名 -l hookDemo.js -o log.txt --no-pause
-f 指定包名
-o 日志文件
--no-pause 在app启动之前hook
6 FridaHook的作用
- 可以用来测试Hook代码的正确性
- 调用加密函数观察算法输出结果特征
- 调用加密函数测试算法复现正确性
- 比较复杂的算法,需要借助主动调用实现算法转发