前言
现在很多app特别是银行、政务app等在使用时,假如你的手机已经被ROOT了,就会弹框提醒你的运行环境不安全,然后某些特定功能就无法使用。ROOT的检测与绕过是一种基于Pattern的对抗,检测方根据ROOT后手机的一些特征Pattern来检测ROOT,而绕过方则是根据检测方的各种检测方式来设计各种绕过方法。
一,检测原理
ROOT检测的方式多种多样,主要是分为Java层和Native层两层进行ROOT检测,ROOT检测方式总结一下主要分为几类:
- 已安装App检测,如是否有magisk
- 文件检测,如”/sbin/su”
- Prop检测,如”ro.debuggable”
- System分区是否可写
检测使用的API也是多种多样,比如Java层的File.exists和File.canRead都能用来检测文件是否存在,Native层的fopen和access也一样。
二,绕过方法
2.1 Magisk
1,遵守排除列表
step1: 在设置中,找到【隐藏Magisk应用】,安装具有随机包名和自定义应用名称的代理应用。