# 好多 app 检测手机是否 root ,虽说是为了安全,但是有时候有些人并不需要安全😎 , hook 脚本在文末

  1. # root 简介

    root 是安卓系统的超级用户,拥有系统最高权限,可以对任意用户的目录或文件进行读取和修改,安卓的沙盒隔离机制对 root 用户变得无效,我们常说的手机 root 了,就是拥有了手机的 root 权限。

  2. # apk 检测手机是否 root ,之前文章也提过,这次对之前脚本完善升级。

    • # root 软件的包名检测,比如 magiskkingrootsupersu

      packageManager.getPackageInfo(str, 0) //  获取 str 对应 apk 的 信息,如果不存在会抛异常,比如检测 com.topjohnwu.magisk 是否存在
    • # 检测 root 特征的文件,比如 sumagiskrootbusybox

    • # 执行 getprop ,然后判断 ro.debuggablero.secure 的值,开启 root 的情况下 ro.secure0 , 手机设置可调试模式 ro.debuggable1

      获取 getprop 的结果,转成数组

      判断两个属性的值

    • # 执行 mount ,然后判断对应分区权限是否为可读写 rw

      获取 mount 的结果,转成数组

      判断是否有 rw 权限

    • # 判断设备是否为测试版,一般是 release-keys ,测试版为 test-keys

    • # 使用 which 命令查看 su ,如果存在则返回路径,不存在无返回

    • # nativeroot 相关文件检测,和 java 层类似
  3. # frida hook 代码

    关注公众号 " 学渣搞逆向 "并回复" root " 获取

    # 参考项目:https://github.com/AshenOneYe/FridaAntiRootDetection 针对此项目做了补充完善,如有不足欢迎大佬补充
    # 相关文章:

    ​ Xposed 检测绕过:https://bbs.pediy.com/thread-271347.htm

    ​ root 检测方法小结:https://blog.csdn.net/ly_xiamu/article/details/81943267

    ​ 概述 APK 完整性保护的逆向分析及防护策略:https://bbs.pediy.com/thread-268480.htm

    ​ 静态分析 - IDA 绕过 so 层 root 检测:https://bbs.pediy.com/thread-271376.htm

    ​ 静态分析 - 绕过 java 层 root 检测:https://bbs.pediy.com/thread-271375.htm

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

渣渣文 微信支付

微信支付

渣渣文 支付宝

支付宝