android root测试,[原创]安卓逆向之绕过root检测的四种姿势
环境:
本机:192.168.137.1 所需软件python2.7.X,android killer 雷电模拟器
Kali虚拟机 ip 192.168.137.129 所需软件 drozer Frida objection
安卓模拟器:ip 192.168.137.195 所需软件 insecureBankV2.apk(下文简称bank) drozer-agent,frida-server
软件地址:
insecureBankV2.apk:https://github.com/dineshshetty/Android-InsecureBankv2
drozer:https://github.com/FSecureLABS/drozer
frida:https://github.com/frida/frida/releases
方式一:修改系统文件
第一步,安装app,配置app服务端
App安装好后如图,配置ip地址为后面启动app.py的主机地址
执行python app.py,该步骤模拟安卓的客户端的后台服务
问题:bank上来需要登陆,不知道账号密码,所以我们需要先搞个账号密码
解决方式:使用drozer进行本地sql注入
操作如下:
启动drozer agent
Kali操作
Adb connect 192.168.137.195 adb连接雷电模拟器,需要先在本机执行adb disconnect断开本地adb连接
Adb forward tcp:31415 tcp:31415 转发本地端口到模拟器,drozer通讯走adb通道
万事具备,执行drozer console connect运行drozer链接到drozer-agent
出现如下表示进入drozer控制台,环境可以使用了
开工
先查看bank包名
Kali 执行adb shell 进入安卓系统 /data/data/ 目录下查看
回到kali drozer控制台
执行如下命令扫描sql注入
run scanner.provider.injection -a com.android.insecurebankv2
存在SQL注入
开始注入,出现用户名,没有密码,应该是空密码
有了用户名,回到模拟器bank登录界面,开始登陆
登陆成功,并看到设备已经root的提示,模拟器的系统是root过的,所以这里提示已经root,该app只是测试app,通常app检测到root环境会退出app,我们如何绕过他的root检测呢,
首先,要了解他检测root的原理,最多的为检查几个root相关文件、/system/bin/su
/system/xbin/su / superuser.apk 等文件,针对文件检测,可以直接通过修改文件名绕过
重命名/system/bin/su /system/xbin/su
提示没有权限,remount重新挂载文件系统即可,回到bank看效果
陈宫绕过,这个方法太简单,有没有更好玩的方法,当然有,请往下看
开始之前请把重名的su恢复原样
方式二:Frida hook关键函数
模拟器安装frida_server 模拟器x86版本
上传frida-server到安卓手机/system/xbin下
Adb push Frida-server /system/xbin/
Adb shell 进入安卓系统命令行
Frida-server 运行frida-server
Kali安装frida
Pip3 install Frida Frida-tools
Adb forward tcp:27042 tcp:27042
Frida-ps -U
出现安卓手机软件列表表示frida配置成功
通过androidkiller静态分析hook功能点,apk直接拖入android killer
通过关键字搜索,我们找到了root检测实现方法所在的类,有了类,我们可以编写脚本对所有函数进行hook
使用androidkiller快速定位关键点
查找该类所有函数
脚本如下
Frida注入获取该类的所有函数,经过静态分析,该函数返回值为布尔值,有可能是判断su是否存在的
有了类和函数,就可以直接编写js脚本更改返回值
脚本如下
运行frida注入脚本
成功绕过
方式三: Objection hook关键函数
有了frida的经验,objection就简单多了
运行objection
知道了root检测函数的所在的类和函数,直接hook函数返回值,这里显示true
更改函数返回值,
返回值更改成功,成功绕过root检测
方式四:修改smali代码重新打包实现永久绕过
通过前面的经验,我们找到了root检测函数
通过静态分析smali代码,发现此处可能是绕过的关键点,该函数通过判断返回值来判断是否root
知道了逻辑,我们修改他的逻辑,原本v3 = v2,程序才跳转
更改逻辑,v3 !=v2才跳转
Smali代码eq为等于,ne为不等于
打包编译回apk,修改完smali记得要保存一下
运行apk看效果,成功绕过
以上为本人总结的root检测绕过方法,如果大家有其他方法,欢迎补充,一起学习。
附件太大,上传不了,有需要的可以私聊我,或者再实验中有任何问题都可与我联系,本人将无偿为您解答。
最后于 2021-3-4 10:31
被半杯凉茶编辑
,原因:
android root测试,[原创]安卓逆向之绕过root检测的四种姿势相关推荐
- 为什么android不能root,我的安卓手机为什么不能ROOT?
对于安卓手机用户来说,不管是不是发烧友,在使用手机的过程中都难免会遇到需要通过ROOT手机来完成的事. 所谓ROOT,其实就是获取手机根目录的权限,Android系统的ROOT可以解释为开放根目录权限 ...
- android hide qq红包,伪装QQ红包绕过URL检测
伪装QQ红包&绕过URL检测 2015-09-24 10:23:49 阅读:0次 一.绕过PC端恶意URL提示 (其实可以手机QQ是无法正常识别出这个url的,所以希望能够改进一下手机客户端的 ...
- 手机android系统锁了怎么解决方法,手机锁码忘了怎么办 四种方法帮你解决【图文教程】...
导语: 手机的密码锁是保护手机非常重要的一个手段,常见的手机密码锁有图案.数字符号.指纹.语音.人脸识别等.特别是图案和数字两种锁码更是得到了用户们的广泛使用,但是人们在使用锁码的时候常常面临这样的尴 ...
- Siege压力测试工具的安装及使用+python flask的四种wsgi方式对比
文章目录 一.前言: 如果要支持https 二.安装使用: 文件备份: 1.mac安装: 2.linux 安装:[centos 服务器] 通用Linux安装: 3.window安装: 4.测试百度: ...
- android冒烟测试自动化,安卓自动化测试总结(五)——测试结果发送及内容展示...
安卓自动化测试总结(五)--测试结果发送及内容展示 使用jenkins自动构建并完成自动化测试后,如果想看测试结果,都需要打开jenkins构建地址,找到对应的构建及构建结果.这样做很麻烦,关心自动化 ...
- android 去广告教程,安卓逆向系列教程 4.6 去广告
4.6 去广告 作者:飞龙 我们要去掉的是主界面上的广告: 把它拖进 Android Killer,这个项目的包是com.cnnzzse.kxxye,通过查询配置文件可得知,主界面是hellot. 我 ...
- android 爬虫 协议分析,安卓逆向:分析抖音登录协议
新版D音由于插入了过多破坏性代码,已经无法由jadx反编译成功了,太多地方都解析失败.我尝试用MT管理器换引擎反编译,也都是一样的结果.这里如果想分析,需要jadx结合smali代码硬啃.我对着sma ...
- android so 签名校验,安卓逆向-调用第三方so文件过签名效验
在逆向过程中经常会遇到各种加密,如果在java层还好说,大部分都是在so层,而且自定义的算法较多,加壳,混淆,这时候我们就可以尝试调用它们app的so文件,其中常见的手段就是签名验证,首先打开jadx ...
- android+5.1+root,最新的安卓5.1.1 ROOT教程(不需要刷第三方内核)
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 大家感谢Chainfire无私的奉献!等谷歌市场登陆中国,如果有supersu大家付费支持吧!我是这样想的,前段时间苦于5.1.1无法直接卡刷supers ...
- android 5.1.1 root,最新的安卓5.1.1 ROOT教程(不需要刷第三方内核)
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 大家感谢Chainfire无私的奉献!等谷歌市场登陆中国,如果有supersu大家付费支持吧!我是这样想的,前段时间苦于5.1.1无法直接卡刷supers ...
最新文章
- EGO首次线下活动分享:Facebook研发团队的高效秘诀
- 数梦工场联手阿里云 推出大数据一体机
- Python爬虫入门(1):综述
- matlab2015b修改快捷键
- 在Java EE 7中自动配置JMS资源
- debian添加删除用户
- 对Lucene PhraseQuery的slop的理解
- 人月神话读感/摘抄 四
- 网页添加QQ/MSN链接
- 一文了解巨量引擎的买量产品矩阵:巨量云图、巨量方舟、巨量广告、巨量纵横
- 软考高级可以作为高级职称直接落户上海吗?
- Android开发学习之WindowManager实现弹窗
- [技术杂谈]常用远程工具下载各个平台操作系统
- android 横竖屏幕切换,Android 横竖屏切换总结
- 四个坐标点顺时针排序
- Hi3519AV100 arm-himix200-linux-gcc 编译失败
- 保护眼睛android版本,【护眼卫士】护眼卫士安卓版(Android)1.6.2下载_太平洋下载中心...
- android 车牌键盘,支持新能源,警车,军车,领事馆车,特种车辆(源代码)
- (首发)SixTool多功能代挂助手
- 得物网络优化,实现平均耗时端降低10%+
热门文章
- VMware Tools安装步骤(windows10)
- Java开发技术总结!java实现简单工作流
- 在Centos8编译Wireshark3.4.5
- 同花顺通达信公式指标改写成python实现代码,纯numpy,无循环!
- Unity 制作一个网格地图生成组件
- 重装WIN7系统 - 通用激活
- echarts中国以及各省市地图数据
- python画七彩圆圈_【彩虹手工】 创意彩虹帽子,吊饰,绘画,玩具,给孩子们一个七彩梦吧!...
- python自动生成文章原创_【Python】皮皮AI工具( AI文章伪原创工具)
- QT QComboBox使用详解