Android调用binder实现权限提升-android学习之旅(81)
当进程A权限较低,而B权限较高时,容易产生提权漏洞
fuzz测试的测试路径
First level Interface是服务
Second level Interface是服务中对应的接口
1.首先获取第一层和第二层接口,及服务以及对应服务提供的接口
2.根据以上信息结合参数类型信息构造meta-data元数据
3.得到构造好的元数据,选择一个Interface,根据Interface以及元数据选择业务代码
4. 调用binder服务线程,参数为随机数
5.输出日志
执行以上5步直到所有接口完成测试
假设A进程权限较低,B进程权限较高
如果A进程可以获得B进程的带IGraphicProducer接口的binder代理对象,那么A进程可以通过跨进程的binder调用利用此漏洞可获得B进程的权限。
第一步:获得mediaserver进程导出的IGraphicProducer,从而普通应用程序可以注入代码到mediaserver
第二步:注入到mediaserver中的代码获得surfaceflinger导出的IGraphicProducer接口,然后通过setSidebandStream可以拿下surfaceflinger。
surfaceflinger 通过调用IWindowsManager的screenShotApplication这个binder调用获取IGraphicProducer接口,拿下system_server
转载于:https://www.cnblogs.com/fengsehng/p/6048528.html
Android调用binder实现权限提升-android学习之旅(81)相关推荐
- android 动态推送权限,提升Android推送消息到达率方法介绍!
推送消息的到达率除了用户终端的网络信号影响之外,有很大一部分是系统屏蔽原因造成的,我们经常提的一个词"app保活"其实就是为了提升推送消息的到达率,但是及时给app做了保活仍然会被 ...
- android app没有读写权限设置,Android 6.0以上权限拒绝打开权限设置界面的解决方法...
本人使用小米手机,打开qq或者微信的时候,某个权限拒绝的话,会提示你开启,点击开启会跳转到app的权限设置界面,当然了,这是国内系统深层定制的原因,也就是说这个界面原声的android没有的!这里以小 ...
- android调用 qt so文件路径,Android Java调用Qt写的so库
有时候,我们反编译apk得到一个so库,如果直接使用这个so库的话,必须使用原来so库同样的package名字,才能用.这样人家反编译你的apk,就知道你侵犯了人家的版权.为了达到混淆的目的,我们可以 ...
- android调用系统音频播放器,Android使用Service实现简单音乐播放实例
Service翻译成中文是服务,熟悉Windows 系统的同学一定很熟悉了.Android里的Service跟Windows里的Service功能差不多,就是一个不可见的进程在后台执行. Androi ...
- android调用天地图,天地图嵌入到Android手机中
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 3.2 使用步骤 1) 将 API 文件 tiandituapi.jar 拷贝到工程根目录下,并在工程属性->Java Build Path-> ...
- android调用手机自带计算器,Android实现简易的计算器
本文实例为大家分享了Android实现简易的计算器的具体代码,供大家参考,具体内容如下 布局(activity_main.xml) xmlns:tools="http://schemas.a ...
- Android调用miui给权限,Android 11+MIUI12,APP任意获取用户隐私的路子被封死
在经历了多个测试版本的迭代和完善之后,安卓11终于来到了用户面前,作为目前全球用户数量最大的操作系统,安卓每一次大版本更新都会为用户带来很多新功能,新体验以及全新的设计系统,底层升级和变化也会一定程度 ...
- android 调用系统的剪切功能,Android实现图片的裁剪(不调用系统功能)
上一篇文章提及了通过调用系统相册或拍照来实现图片的缩放\裁剪.不过这对于笔者项目的要求同样不适合,笔者需要的是通过对手机屏幕整个进行一个截图,并对这个截图进行裁剪操作. 依靠系统功能确实可以实现图片的 ...
- android调用wcf服务的xml,Android调用WCF
1.构建服务端程序 using System.ServiceModel; namespace yournamespace { [ServiceContract(Name = "HelloSe ...
最新文章
- (转)Ubuntu12.04上NFS Server安装使用过程
- 计算当前时间对应的本周一、上周一
- Windows下Appium环境搭建(java版)
- mysql导入sql文件
- predis如何实现phpredis的pconnect方法
- 装X神器!NuShell
- ANSI,ASCII,Unicode的区别与联系!
- spring-boot注解详解(五)
- ECS云资源可视化--资源概览
- mysql文件导出NULL值处理_Mysql select into outfile NULL值导出的处理方法
- c# base 和this 继承
- HttpComponents入门解析
- oracle 导出写入文件失败怎么办,编辑dmp文件解决导入导出问题(oracle 922错误 ,缺少或无效选项)...
- VMware Workstation 15 解锁Mac OS安装
- pycharm2017自建注册服务器
- Linux df 命令使用详解
- oracle 修改pkg命令,oracle简单PKG(包)编写
- 关于test eax eax
- 第七章 C语言函数_什么是函数?C语言函数的概念
- hadoop之hdfs命令详解
热门文章
- 计算机网络对口题目,2011-2015计算机对口升学网络试题汇总.doc
- python爬虫——代理IP
- LeetCode 2039. 网络空闲的时刻(BFS)
- LeetCode 240. 搜索二维矩阵 II(二分查找 分治)
- centos5.8安装mysql5.3_CentOS 5.8 64位 源码安装mysql5.5.28
- amd cpu 安卓模拟器_夜神模拟器常见问题解答_v20201025
- 87说明书 ikbc_女性玩家的首选!——IKBC白无垢. 樱机械键盘赏评
- 吴恩达发起新型竞赛范式!模型固定,只调数据?!
- 一般化机器学习与神经网络
- 细说ReactiveCocoa的冷信号与热信号(一)