简介
camille可以hook住Android敏感接口。根据隐私合规的场景,辅助检查是否符合隐私合规标准。
环境准备
1.搭建好Python环境
2.搭建好frida、frida-tools
3.准备好已Root的模拟器
4.模拟器安装好frida service
步骤
一、安装MuMu模拟器
https://mumu.163.com/mac/index.html
安装完后,通过
adb connect 127.0.0.1:5555
来连接到模拟器<
二、安装Frida
地址:Frida官网
pip3 install frida-tools # CLI tools
pip3 install frida # Python bindings
npm install frida # Node.js bindings
安装frida过程如下截图所示
三、安装Camille
https://github.com/zhengjim/camille
将项目克隆到本地,然后安装一下requirements脚本文件
git clone https://github.com/zhengjim/camille.git
cd camille
pip3 install -r requirements.txt
python3 camille.py -h
四、安装frida-server
(1)查看版本号
查看frida版本和模拟器Cpu版本
frida --version
adb shell getprop ro.product.cpu.abi
(2)下载对应的frida-server
https://github.com/frida/frida/releases
本机安装的frida版本为:V15.2.2,CPU为:x86*64,*所以下载的frida-server版本为:frida-server-15.2.2-android-x86_64.xz
(3)push到手机目录
先解压文件,通过 adb push
的方法,将解压后的文件夹push到手机目录中
adb push 本地frida-server文件路径 /data/local/tmp/
(4)进入安卓手机
adb shell
su
如果显示$的,代表shell,但是我们需要Root的权限,输入su,即可切换Root权限,但如果你看到的是#,就证明是Root权限,不需要切换。
(5)修改文件权限&运行server
修改文件权限为777,然后运行server
cd /data/local/tmp/
chmod -R 777 文件名
./frida-server-15.1.17-android-arm64
(6)检测server是否运行
检测一下服务是否启动正常
frida-ps -U
五、camille用法
python3 camille.py APP包名
可以根据场景来判断是否合规,如:获取敏感信息是否是在同意隐私政策之前等。
- -ns:不显示日志。默认显示
- -f: 保存app行为轨迹到到execl里。默认不保存。
- -u: 扫描指定模块。与命令-nu互斥。多个模块用','隔开。例如:phone,permission
- -nu:跳过扫描指定模块。与命令-u互斥。多个模块用','隔开。例如:phone,permission 模块列表同上
python3 camille.py APP包名 -ns -f demo.xls