参考
【Android App】安全监测隐私权限工具及自测 图文详解
Android APP隐私合规检测辅助工具Camille使用经验及指引
隐私合规检测环境部署
Android隐私合规检测:构建安全可信的应用环境
camille实操和踩坑
(我是在雷电模拟器)
运行环境
安装python,adb工具
操作
- 下载camille
https://github.com/zhengjim/camille
解压

在这个路径启动cmd,执行 pip install 安装库
bash
pip install -r requirements.txt
- 在电脑上安装frida
bash
pip install frida==16.0.0 frida-tools==12.0.0
亲测frida 版本17会报以下错,如果使用的其它的版本也报了这个错就换版本,上面的版本能用
bash
ReferenceError: 'Java' is not defined
hook fail, try delaying hook, adjusting delay time
验证是否安装成功,安装成功会打印版本
bash
frida --version

- 查看设备架构
启动cmd执行
bash
adb devices
adb shell
getprop ro.product.cpu.abi

我的是x86_64
- 下载frida-server
https://github.com/frida/frida/releases

版本一定要和电脑上的安装的frida版本(即 frida --version)一样,否则会报版本不一致,架构要和雷电模拟器一样
5.解压

6.把解压后的frida-server放到雷电模拟器里
先看看能不能连上模拟器
bash
adb devices
用adb push把文件放进模拟器/data/local/tmp路径中,命令:adb push frida-server路径 /data/local/tmp

chmod给frida-server权限,否则无法执行 Permission denied
接下来启动frida-server
bash
adb shell
su
cd /data/local/tmp
./frida-server-16.0.0-android-x86_64

注意:启动后是不会输出log的,看这个光标在闪就行了,窗口不要关闭,否则要重新启动

7.监听app申请了哪些隐私权限
cd 进入 camille 文件夹,运行 camille,格式:python camille.py 包名,把下面的 com.xx.xx 换成自己的包名
bash
python camille.py com.xx.xx
有些教程会带 -t 参数,亲测发现监听会漏掉一些权限,建议不要带这个参数
bash
python camille.py com.xx.xx -t 3
通过 -h 参数看到 -t 的说明
bash
python camille.py -h

我的app在这个弹窗,用户点击同意前获取了android_id,导致过不了审,直接在监听的log输出里搜到了android_id

unity项目看不到unity的堆栈,依然无法定位到具体代码,需要自行排查。