此方法可以用来大家自己检测自己的app是否非法调用了用户信息。
前言
由于开发的公司的APP被工信部警告,有违法手机信息,APP以隐私政策弹窗前,非法收集用户信息,mac地址。
排查过程
通过抓包我们确认没用在弹出隐私条款前,发送类似的接口上报敏感信息,后和工信部电话沟通确认是只要你有调用getMacAddress此方法,就认定为非法的,即使你没有上报。所以就想怎么抓取那些sdk调用了getMacAddress,下面就是找方法的过程。。。N+1小时后,我确定是360加固额外获取了这些信息。
确定方案
使用VirtualXposed在手机上装了一下虚拟系统。
:https://github.com/android-hacker/VirtualXposed/issues
HookLoginDemo: 这是一个用来拦截方法的程序,具体是你需要拦截那些方法,可以在HookLogin中自定义。(原理不做过多阐述)
https://github.com/sgl890226/HookLoginDemo
使用方法介绍:
1)安装两个到你的手机。
2)打开VirtualXposed 把你要扫描的应用和HookLogin装入虚拟系统。
点击底部按钮-->添加应用-->选择你的应用,如:自己要排查应用&HookLogin
[图片上传中...(image.png-3ab759-1599199322930-0)]
3)向上滑动打开Xposed选择模块,勾选中该选项,然后在设置重启
4)然后依次打开安装的应用(切到后台,不要杀死应用),xposed-->hooklogin)-->你要的检测应用,注意停留一会(10s左右),让log写入文件中。注意清空一下后台,防止其他应用错报,也可以在HookLogin限制一下包名,大佬们看一下代码就知道怎么改了。
5)xposed切换到日志模块,查看输出内容,也可以到导出
日志内容如下:
可以把所有调用我们想知道的方法都排查出来。
整个流程就是这样,顺便说一下,我们的应用是因为360加固后默认360在加固过程中添加了获取mac地址的方法,导致被整改。
我们找方案的过程中试了还几种加固:
如:
360加固--加固后的包加了mac地址,审核被拒
腾讯乐加固--加固后使用该方法打不开,目前不能确定是否可以。
百度加固--加固后使用该方法打不开,目前不能确定是否可以。
梆梆加固-加固后没有增加额外信息 -- 目前我们使用的方式
爱加密--加固后被屏蔽了日志,目前不能确定是否可以。
实际,这个方法不仅能用来排查审核内容,还可以运用到三方sdk冲突的解决,定位错误方法等,总之是排查三方库和整理隐私条款的一个利器。