01 FridaHook环境搭建

746 阅读1分钟

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代码的正确性
  • 调用加密函数观察算法输出结果特征
  • 调用加密函数测试算法复现正确性
  • 比较复杂的算法,需要借助主动调用实现算法转发

7 安卓源码在线分析网站

aospxref.com/